zoukankan      html  css  js  c++  java
  • TCP/IP详解卷一02

    1. 链路层的目的:

      1.1 为IP模块发送IP数据报和接收IP数据报;

      1.2 为ARP模块发送ARP请求和接收ARP应答

      1.3为RARP模块发送RARP请求和接收RARP应答

    2.以太网(主要局域网技术,CSMA/CD(带冲突检测的载波侦听多路接入)速率10Mb/s,地址48bit )

    3.IEEE 802(820.3针对整个CSMA/CD,802.4针对令牌总线网络,802.5针对令牌环网络),802网络共有的逻辑链路控制(LLC)

      以太网封装的理解:目的地址(48bit)--源地址(48bit)------类型(16bit;0800IP数据报;0806ARP请求/应答;8035RARP请求/应答)---数据(46~1500字节)------CRC(32bit)

    4.尾部封装(trailer encapsulation;RFC 893;以太网的封装格式)

    5.SLIP:串行线路IP(Serial Line IP)

      5.1SLIP协议定义的帧格式:(1)IP数据报以一个称作END的特殊字符结束。(2)如果IP报文中某个字符为END,那麽就需要输入两个0xdb和0xdc来取代。(3)如果IP报文中某个字符为SLIP的ESC字符,就需要传输两个字节0xdb和0xdd来取代它。(则在串行线路上传输的总字节数是原IP报文长度再加连续添加的字节数)

      5.2缺点:(1)每一端必须知道对方的IP地址,没有办法将本端的IP地址传送给另一端;(2)数据帧中没有类型字段;(3)SLIP没有在数据帧上加上检验和(类似于以太网上的CRC字段)

    6.CSLIP:(压缩的串行线路IP):将40个字节压缩到3或者5个字节。能在CSIP的每一端维持多达16个TCP连接,并且知道其中每个连接的首部中的某些字段一般不会发生变化。

    7.PPP:点对点协议

      7.1包括:(1)在串行链路上封装了IP数据报的方法

          (2)建立、配置及测试数据链路的链路控制协议(LCP:Link Control Protocol)

          (3)针对不同网络层协议的网络控制协议(NCP:Network Control Protocol)

      7.2  PPP数据帧的格式:

      每一帧都是以标志位0x7e开始和结束,紧接着是一个地址字符值为0xff,然后是0x03的控制字节。

      协议字段中0X0021(表示信息字段是一个IP数据报),值为0xc021(信息字段是链路控制数据);值为0x8021时,表示信息字段是网络控制数据。

      CRC字段(帧检验序列)是一个循环冗余检验码,以检测数据帧中的错误。

      标志字符0x7e,当该字符出现在信息字段时,PPP需要对它进行转义(遇到字符0x7e 时,需要连续传送两个字符:0x7d和0x5e,以实现标志字符的转义)。

      PPP的优点:(1)PPP支持在单根串行线路上运行多种协议,不只是IP协议;

            (2)每一帧都有循环冗余检验

            (3)通信双方可以进行IP地址的动态协商(使用IP网络控制协议)

            (4)与CSLIP类似,对TCP和IP报文首部进行压缩;

            (5)链路控制协议可以对多个数据链路选项进行设置

      代价:每一帧的首部增加3个字节。

    8.环回接口(Loopback Interface):IP 地址:127.0.0.1,命名为localhost,传给环回接口的IP数据报不能在任何网络上出现

        关键点:(1)传给环回地址(127.0.0.1)的任何数据均作为IP输入

            (2)传给广播地址或者多播地址的数据复制一份传给环回接口,然后送到以太网上。、

            (3)任何传给该主机IP地址的数据均送到环回接口

            (4)环回接口可以被看作网络层下面的另一个链路层,网络层把数据报传送给了环回接口,就像传给其他链路层一样,只不过环回接口把它返回到IP的输入队列中。

            (5)送给主机本身IP地址的IP数据报一般不应该出现在相应的网络上。

    9.最大传输单元MTU:以太网数据帧的长度最大值是1500字节,802.3数据帧的长度最大是1492字节。链路层这个特性为MTU。

      (1)当IP层数据报的数据长度大于链路层的MTU,那麽IP层需要进行分片(fragmentation)

      (2)?????MTU并非指的是网络媒体的物理特性,而是一个逻辑限制,目的是为交互使用提供足够快的响应时间。将这个数值计算出来。?????

      (3)netstat打印出网络接口的MTU

    10.路经MTU:当两台主机之间的通信需要通过多个网络,每个网络的链路层就可能有不同的MTU,重要的不是两台主机所在网络的MTU的值,重要的是两台通信主机路径中最小的MTU。

    11.串行线路吞吐量计算:?????

    12.netstat的使用:用于显示与IP 、TCP、UDP和ICMP相关的统计数据,一般用于检验本机各端口的网络连接情况

    netstat -s :按照各个协议分别显示其统计数据。

    netstat -e :显示以太网的统计数据(包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量)

    netstat -r: 显示路由表的信息,类似于route print 命令看到的信息。除了显示有效地路由外,还显示当前有效地连接

    netstat -a:显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING)的那些连接

    netstat -n : 显示所有已建立的有效连接。

        

  • 相关阅读:
    Calling a parent window function from an iframe
    JSON with Java
    Posting array of JSON objects to MVC3 action method via jQuery ajax
    What's the difference between jquery.js and jquery.min.js?
    jquery loop on Json data using $.each
    jquery ui tabs详解(中文)
    DataTables warning requested unknown parameter
    Datatables 1.10.x在命名上与1.9.x
    jQuery 1.x and 2.x , which is better?
    DataTabless Add rows
  • 原文地址:https://www.cnblogs.com/any000yna/p/7458228.html
Copyright © 2011-2022 走看看