• 计算机网络自顶向下第三章传输层


    传输层主要的协议有TCP和UDP

    传输层协议主要为主机内部程序提供传输服务,而网络层协议是为两台主机提供传输服务

    UDP不可靠无连接的服务(不能保证一个进程所发送的数据能够完整无缺的(全部)到达目的进程)

    TCP可靠面向连接的服务

    IP尽力而为的交付服务也是不可靠服务

    多路复用指在运输层封装套接字绑定的端口信息,多路分解则相反,分解收到的数据报,得到对应套接字绑定的端口。

    多路复用在源主机从不同套接字中收集数据库,为每个数据块封装首部信息,从而生成报文段,并将报文段传递到网络层

    多路复用的要求

    1套接字有唯一标识符

    2每个报文段有特殊字段来指示该报文段所要交付到的套接字(特殊字段应该就是指对应的源端口号)

    端口号从0-65535,0-1024是系统内部使用的,如80端口443端口都是有特殊用途的。最好不要使用

    多路分解将运输层报文段中的数据交付到正确的套接字的工作

     UDP只是做了运输协议能够做的最少的工作。除了复用/分解功能及少量的差错检测外,几乎没有对IP添加别的东西。

    UDP相较于TCP的优点

    1关于何时,发送什么数据的应用层控制更为精细(因为没做什么工作,就交付到下层服务了,所以花的时间少,控制就更精细)

    2无需建立连接,没有建立时延

    3无连接状态

    4分组首部开销小 TCP20个首部字节,UDP8个首部字节

    如果要让UDP实现可靠数据传输,需要程序自身建立可靠性机制。

    差错检验

    接收方反馈 肯定确认ACK,否定确认NAK

    重传

    回退N步协议(GBN)

    如果发现分组有失序,把之后的分组都丢弃,让发送方重发

    选择重传

  • 相关阅读:
    中文转拼音 (utf8版,gbk转utf8也可用)
    会不会死循环
    图片放大缩小的zoom.js
    Getting unknown property: commonmodelsTeacher::auth_Key
    Yii-admin 权限菜单配置
    wordpress 后台富文本编辑器,添加图片发现无法左对齐,样式出现混乱
    windows 命令
    Yii2 获取URL的一些方法
    PHP 直接使用html输出excel
    json JSON_UNESCAPED_UNICODE 防止中文乱码
  • 原文地址:https://www.cnblogs.com/lgh344902118/p/6744721.html
Copyright © 2020-2023  润新知