1 / 42
文档名称:

6传输层协议.ppt

格式:ppt   大小:485KB   页数:42页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

6传输层协议.ppt

上传人:xunlai783 2018/5/9 文件大小:485 KB

下载得到文件列表

6传输层协议.ppt

相关文档

文档介绍

文档介绍:第六章传输层协议
问题提出:
IP包在网络层传送过程中由于网络硬件损坏、网络负荷过重、目的网络、目的主机、目标端口不可达等原因,导致IP包被丢弃或损坏;
由于 IP 包的体积是有限的,而应用系统之间交换的数据往往会超过这个限制,因此,必须有一套机制将应用系统送来的数据进行划分,以符合 IP包的传送要求;
由于IP包路由的复杂性及不可预测性,IP包之抵达常是不依序的,必须对IP包进行组装和控制;
主机上同时可能有多个应用系统之间需要进行通信的情况,需要标示;
需要一套传输控制机制,以更可靠、更方便和有效的传送数据,且将这种机制与应用程序分离开,并向应用程序提供一致的数据流传送接口。
传送层就是应上述要求而产生的:
传输层的目的是在网络层提供主机之间通信服务的基础上,向主机上应用进程之间的提供可靠(如果需要的话)的数据通信服务;
接收由上层协议传来的数据,并以 IP 包可以接受的格式进行“封装”工作;
通过IP层提供的服务进行数据的传送和回应的确认,以及处理数据流的错误检测、组装和控制。
在 TCP/ IP 协议族中,传送层有两个协议:TCP 与 UDP:
UDP
是一个无连接(Connectionless)的非可靠传输协议;
没有确认机制来保证数据是否正确的被接收;
不需要重传遗失的数据;
数据的接收可不必按顺序进行;
没有控制数据流速度的机制;
适合讯息量较大、时效性大于可靠性的传输。
TCP
是一个面向连接(Connection Oriented)的可靠传输;
提供数据包的错误检测、回应确认、流量控制和数据包顺序控制等机制。
TCP/IP 的传输层协议
传输层服务端口
如何标示主机上的应用进程:
主机上可能有多个进程同时运行,发送端如何将数据包发给指定进程呢?当数据包抵达目的地后,接收端又如何将它交给正确的服务进程处理呢? --门牌号码
为每个需要通信的应用程序分配一个通讯端口(Port),在TCP/IP中,其值为1~216 ,用于唯一标识一个进程;
在技术上,进程使用哪一个端口并不重要,关键是能让对方知道就行,同一主机中进程的端口号必须是唯一的。端口的分配有:
全局分配—编号从1到1024这些端口标识了某些特定服务的协议,这种端口是不可再重新定义,如21表示FTP服务,服务等;
本地分配—用于标识主动要求通信或非公开服务的进程,由进程动态申请获得。
TCP/IP协议的最常用的端口
通常把端口号为1024以内的称之为常用端口,这些常用端口所对应的服务
通常情况下是固定的,参见附件。..\参考资料\
服务类型
默认端口
服务类型
默认端口
Echo
7
Daytime
13
FTP
21
23
SMTP
25
Time
37
Whois
43
DNS
53
Gopher
70
Finger
79
WWW
80
POP3
110
NTP
119
IRC
194
UDP协议(User Datagrame Protocol)
UDP是在IP层之上,和IP层一样提供无连接的数据报服务,与IP相比,主要增加了协议端口功能,以提供主机上进程之间的通信服务。
不可靠的数据报(datagram)服务;
不支持报文分组;
支持多路复用;
不提供流量控制;
服务效率高(没有建/拆链时间);
适合于在高可靠性、低延时的局域网上运行;
数据的可靠性等问题由上层协议解决。
1、UDP报文格式
UDP Source Port (16)
UDP Destination Port (16)
Message Length (16)
UDP Checksum (16)
DATA ...
Source Port & Destination Port --源端进程获得的端口号和目的端进程分配的端口号;
Message Length -- UDP 包的字节数,包括包头和数据,最小值为 8 ;
Checksum –校验和,包括伪包头+ UDP包头+ UDP数据;
包头
数据区
Source IP Address (32)
Destination IP Address (32)
Zero (8)
Protocol (8)
UDP Length (16)
伪包头
Source IP Address& Destination IP Address –源/目主机IP地址;
Protocol—协议类型,UDP:17;
UDP Length—包头+ 数据区的总长度,不包括伪包头。
注意:
伪包头并不包括在UDP报文中,使用伪包头是为了验证UDP是否到达正确的目的端:
----当目的端收到UDP包