zoukankan      html  css  js  c++  java
  • 计算机网络自顶向下第三章传输层

    传输层主要的协议有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)

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

    选择重传

  • 相关阅读:
    SharePoint 2010 编程链接两个web part
    SharePoint 2010 Value does not fall within the expected range
    SharePoint 自定义开发chart web part
    跨站点显示SharePoint 列表或者文档库 cross site
    SharePoint Javascript 改变当前站点语言
    【转】 C++11中值得关注的几大变化
    XPM
    Thinking in C++ 第一章 对象导言
    Thinking in C++ 第4,5,6,7章
    Internal DSL
  • 原文地址:https://www.cnblogs.com/lgh344902118/p/6744721.html
Copyright © 2011-2022 走看看