计算机网络基础--传输层

设置传输层的目的就是要实现分布式进程通信。

进程寻址与端口
1.网络环境中完整的进程标识应该是:
  本地主机地址-本地进程标识 ;
  远程主机地址-远程进程标识。
2.进程地址也叫做端口号(port number)。
3.端口就是运输层服务访问点 TSAP。
4.端口是用来标志应用层的进程。

端口号:16 位
IP 地址:32 位
MAC 地址:48 位

传输层为运行在不同主机上的进程之间提供了逻辑通信,而网络层则提供了主机之间的逻辑通信。
传输层向上提供可靠的和不可靠的逻辑通信信道

TCP 和 UDP 都用端口号来识别应用层实体,一边准确地把信息交给上层对应的协议(进程)。
UDP 在传送数据之前不需要先建立连接。
TCP 则提供面向连接的服务。

用户数据报协议 UDP
UDP 只在 IP 的数据报服务之上增加了很少一点的功能,即端口的功能和差错检测的功能。
一个 UDP 套接字是由一个包含目的 IP 地址和目的端口号的二元组来全面标识的。

UDP 报文字段结构:

8 字节首部。
有限的差错检验功能。

TCP 特点:
1. 面向连接的。
2. 全双工的数据流。
3. 点对点的。

TCP 报文段结构:

源端口和目的端口字段——各占 2 字节。端口是传输层与应用层的服务接口。传输层的复用和分用功能都要通过端口才能实现。

序号字段——占 4 字节。TCP 连接中传送的数据流中的每一个字节都编上一个序号。序号字段的值则指的是本报文段所发送的数据的第一个字节的序号。

确认号字段——占 4 字节,是期望收到对方的下一个报文段的数据的第一个字节的序号。
若确认号 = N,则表明:到序号 N – 1 为止的所有数据都已正确收到。

首部长度(即数据偏移)——占 4 位,它指出 TCP 报文段的数据起始处距离 TCP 报文段的起始处有多远。“数据偏移”的单位是 32 位字(以 4 字节为计算单位)。

保留字段——占 6 位,保留为今后使用,但目前应置为 0。

紧急 URG —— 当URG=1时,表明紧急指针字段有效。它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)。

确认 ACK —— 只有当ACK=1时确认号字段才有效。当ACK=0时,确认号无效。

推送 PSH (PuSH) —— 接收 TCP 收到 PSH = 1 的报文段,就尽快地交付接收应用进程,而不再等到整个缓存都填满了后再向上交付。

复位 RST (ReSeT) —— 当RST=1时,表明 TCP 连接中出现严重差错(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立运输连接。

同步 SYN —— 同步 SYN = 1 表示这是一个连接请求或连接接受报文。

终止 FIN (FINis) —— 用来释放一个连接。FIN=1表明此报文段的发送端的数据已发送完毕,并要求释放运输连接。

紧急指针字段 —— 占 16 位,指出在本报文段中紧急数据共有多少个字节(紧急数据放在本报文段数据的最前面)。

填充字段 —— 这是为了使整个首部长度是 4 字节的整数倍。

为什么要三次握手而不能只要两次握手?
没有办法防止已经失效的请求再次到达接收方。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值