tcp/ip详解卷一:协议 --- 链路层

1.链路层

        链路层主要有三个目的:

               1)为IP模块发送和接受IP数据报;

               2)为ARP模块发送ARP请求和接受ARP应答;

               3)为RARP协议发送RARP请求和接受RARP应答。

TCP/IP支持多种不同的链路层协议,这取决于网络所使用的硬件。

2.以太网和IEEE802

介绍:

        以太网是当今TCP/IP采用的主要局域网技术,采用CSMA/CD(Carrier Sense,Muotiple Access with Collistion Detection)的媒体接入方式,速率为10Mb/s,地址为48bit。

        IEEE(Institute of Electrical and Electronics Engineers)802委员会发布了一个稍有不同的标准集。

数据帧格式:

        两种格式都采用48bit的源地址和目的地址(及硬件地址),ARP和RARP协议能够对32bit的IP地址和48bit硬件地址进行映射。

        接下来的两个字节,在以太帧的封装格式中白哦是类型字段(后续数据的类型,并以此确定接受数据的上层协议),之后就是数据。

        而IEEE802网络的帧格式目的地址之后的2个字节用来表示后续字节的长度,不包括CRC校验码,跟随其后的是3个字节的802.2LLC和5字节的802.2SNAP。SNAP中的最后两个字节和以太网帧格式中两个字节的类型字段的含义是相同的。

        CRC字段用于帧内后续字节差错的循环冗余码校验(校验和)(也称为FCS或帧校验序列)。

3.SLIP:串行线路IP

        SLIP 的全称是 Serial Line IP 。它是一种在串行线路上对 I P 数据报进行封装的简单形式,在RFC 1055[Romkey 1988]中有详细描述。 SLIP 适用于家庭中每台计算机几乎都有的 R S - 2 3 2 串行端口和高速调制解调器接入Internet。

        SLIP协议定义的帧格式:
        1)IP数据报以一个称作END(0xc0)的特殊字符结束。同时,,为了防止数据报到来之前的现路噪音呗当作数据报内容,因此在数据报开始时也传一个END字符。
        2)如果IP报文中存在END字符,则连续传输两个字节0xdb和0xdc来取代它,0xdb被称为SLIP的ESC字符。
        3)如果IP报文中存在SLIP的ESC字符,那么就要传输两个字节0xdb和0xdd来取代它。

缺陷:

        1)每一端必须知道对方的IP地址。没有办法把本端的IP地址通知给另一端。

        2)数据帧中没有类型字段。如果一条串行现路用于SLIP,那么它不能同时使用其他协议。

        3)SLIP没有在数据帧中加上校验和。

4.CSLIP:压缩的SLIP

        由于串行线路的速率较低,而且通信经常时交互式的,因此SLIP线路上有许多小的TCP分组进行交换。有时为了传送1个字节的数据需要20个字节的IP首部和20个字节的TCP首部,总数超过40个字节,为了弥补这一缺陷,人们提出了CSLIP(压缩SLIP)协议,它能在CSLIP的每一端维持多达16个TCP连接,并且知道其中每个连接的首部中的某些字段一般不会拜年话。对于发生变化的字段,大多数只是一些小的数字和的改变,这些被压缩的首部大大地缩短了交互响应时间。(一般能将40个字节压缩到3至5字节)

5.PPP:点对点协议

ppp,点对点协议修改了SLIP协议中地所有缺陷:

        1)在串行链路上封装IP数据报的方法。PPP既支持数据为8bit和无奇偶检验的一部模式,还支持面向比特的同步连接。

        2)建立、配置及测试数据链路的链路控制协议。允许通过双方进行协商,以确定不通的选项。

        3)针对不同网络层协议的网络控制协议体系。当前RFC定义的网络层有IP、OSI网络、DECnet以及AppleTalk。

PPP协议格式:

每一帧数据以标志字符0x7e开始和结束。紧接着是一个地址字节,值始终是0xff,然后是一个值为0x03的控制字节。接下来是协议字段,类似于以太网中类型字段的功能:值为0x0021时,表示信息字段是一个IP数据报;值为0xc021时,表示信息字段是链路控制数据;值为0x8021时,表示信息字段时网络控制数据。CRC字段时一个玄幻冗余检验码,以检测数据帧中的错误。

PPP比SLIP的优点:

        1)PPP支持在单根串行线路上运行多种协议,不知道IP协议;

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

        3)通信双方可以进行IP地址的动态协商;

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

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

6.环回接口

        用来运行在同一台主机上的客户称呼和服务器程序通过TCP/IP进行通信,网络号127局势为换回接口预留的,大多数系统把IP地址127.0.0.1分配给这个接口,称为localhost。一个传给环回接口的IP数据报不能在任何网络上出现。

1)传给环回地址的任何数据均作为IP输入。

2)传给广播地址或多播地址的数据报赋值一个传给环回接口,然后送到以太网上。

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

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值