计网-传输层(持续更新)


在这里插入图片描述

概述和传输层服务

传输服务和协议

为运行在不同主机上的应用进程提供逻辑通信

传输协议运行在端系统:

  • 发送方:将应用层的报文分成报文段,然后传递给网络层
  • 接收方:将报文段重组成报文,然后传递给应用层

有多个传输层协议可供应用选择:

  • Internet: TCP和UDP

传输层vs网络层

网络层服务:主机之间的逻辑通信

传输层服务:进程间的逻辑通信

  • 依赖于网络层的服务。延时、带宽
  • 并对网络层的服务进行增强。数据丢失、顺序混乱、
    加密

有些服务是可以加强的:不可靠一>可靠、安全

但有些服务是不可以被加强的:带宽,延迟

传输层协议

  • 可靠的、保序的传输:TCP
    。多路复用、解复用
    。拥塞控制
    。流量控制
    。建立连接
    。字节流

  • 不可靠、不保序的传输:UDP
    。多路复用、解复用
    。没有为尽力而为的IP服务添加更多的其它额外服务
    。数据报

  • 都不提供的服务:
    。延时保证
    。带宽保证

多路复用和解复用

  • 在发送方主机多路复用
    从多个套接字接收来自多个进程的报文,根据套接字对应的IP地址和端口号等信息对报文段用头部加以封装(该头部信息用于以后的解复用)
  • 在接收方主机多路解复用
    根据报文段的头部信息中的IP地址和端口号将接收到的报文段发给正确的套接字(和对应的应用进程)

多路解复用工作原理

在这里插入图片描述

无连接(UDP)的多路解复用

UDP socket 由二元组确定:目的 IP 地址, 目的端口号

当主机接收 UDP 段:

  • 检测段中的目的端口号
  • 引导 UDP 段到具有该端口号的 socket

具有不同源IP及/或源端口号的IP 数据报被引导到同一个 socket
在这里插入图片描述

无连接的多路解复用

当主机接收到UDP段时:

  • 检查UDP段中的目标端口号
  • 将UDP段交给具备那个端口号的套接字

具备相同目标IP地址和目标端口号,即使是源IP地址或/且源端口号的IP数据报,将会被传到相同的目标UDP套接字上

UDP多路复用的例子

在这里插入图片描述

面向连接(TCP)的多路复用

TCP socket 由四元组确定:

  • 源 IP
  • 源端口
  • 目的 IP
  • 目的端口

解复用:接收主机使用这四个值,将报文段引导至适当的 socket

服务器主机可以支持多个并发的 TCP socket:

  • 每个 socket 由其自身的四元组确定

Web 服务器对每个连接的客户端,有不同的 socket

  • 非持续的 HTTP 对每个请求有不同的 socket

面向连接(TCP)的解复用例子

在这里插入图片描述

无连接传输:UDP

UDP:User Datagram Protocol

UDP 数据段可以

  • 丢失
  • 应用数据不按序到达

无连接

  • 在UDP收发双方之间, 无需握手信号
  • 每个 UDP 数据段的操作都互相独立

UDP 被用于

  • 流媒体(丢失不敏感,速率敏感、应用可控制传输速率)
  • DNS
  • SNMP

在UDP上可行可靠传输

  • 在应用层增加可靠性
  • 应用特定的差错恢复

为什么会有UDP

  • 不建立连接
  • 简单
  • 报文段的头部小
  • 无拥塞控制和流量控制

UDP:用户数据报协议

UDP数据报协议:
在这里插入图片描述

UDP校验和

目标:检测在被传输报文段中的差错

发送方:

  • 将报文段的内容看作一串16比特的整数
  • checksum(校验和):作段内容的加法和、反码
  • 发送方将校验和放入 UDP的 checksum 字段

接收方:

  • 对接收到的段内容进行和反码计算
  • 检查计算结果是否与收到的校验和相等:
    – NO – 查出错误
    – YES – 没查出错误. 但是仍有可能存在错误

UDP校验和例子

最高位的进位回加到结果中
在这里插入图片描述

1

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值