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地址的数据均送到环回接口。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
编辑推荐 本书是网络构建原型——4.4BSD的建造者的倾力之作,《TCP/IP解析》中的第1,主要讲述TCP/IP协议方面的内容。与其他的TCP/IP书藉的最大不同在于,本书不仅仅讲述了RFCS的标准协议,而且结合大量实例讲述了TCP/IP协议包的定义原因及在各种不同的操作系统中(如Sunos4.1.3、Soloris2.2、AIX3.2.2)的应用与工作方式,这样可以以动态方式讲述TCP/IP的知识,使读者可以轻松掌握TCP/IP的知识:路由协议、寻址协议、组控制协议、简单邮件传输协议等。全书内容实用性强,是在校生学习TCP/IP知识的良师益友。 内容简介  《TCP/IP详解1:协议》是一本完整而详细的TCP/IP协议指南。描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。作者用Lawrence Berkeley实验室的tcpdump程序来捕获不同操作系统和TCP/IP实现之间传输的不同分组。对tcpdump输出的研究可以帮助理解不同协议如何工作。 本书适合作为计算机专业学生学习网络的教材和教师参考书。也适用于研究网络的技术人员。 作者简介 W.Richard Stevens(1951-1999)是一位非常受人尊敬的专家,除了《TCP/IP详解》三本外,他还有其他两部最为畅销的作品:《UNIX环境高级编程》和《UNIX网络编程》(两本)。 目录 译者序 前言 第1章 概述 1 1.1 引言 1 1.2 分层 1 1.3 TCP/IP的分层 4 1.4 互联网的地址 5 1.5 域名系统 6 1.6 封装 6 1.7 分用 8 1.8 客户-服务器模型 8 1.9 端口号 9 1.10 标准化过程 10 1.11 RFC 10 1.12 标准的简单服务 11 1.13 互联网 12 1.14 实现 12 1.15 应用编程接口 12 1.16 测试网络 13 1.17 小结 13 第2章 链路层 15 2.1 引言 15 2.2 以太网和IEEE 802封装 15 2.3 尾部封装 17 2.4 SLIP:串行线路IP 17 2.5 压缩的SLIP 18 2.6 PPP:点对点协议 18 2.7 环回接口 20 2.8 最大传输单元MTU 21 2.9 路径MTU 21 2.10 串行线路吞吐量计算 21 2.11 小结 22 第3章 IP:网际协议 24 3.1 引言 24 3.2 IP首部 24 3.3 IP路由选择 27 3.4 子网寻址 30 3.5 子网掩码 32 3.6 特殊情况的IP地址 33 3.7 一个子网的例子 33 3.8 ifconfig命令 35 3.9 netstat命令 36 3.10 IP的未来 36 3.11 小结 37 第4章 ARP:地址解析协议 38 4.1 引言 38 4.2 一个例子 38 4.3 ARP高速缓存 40 4.4 ARP的分组格式 40 4.5 ARP举例 41 4.5.1 一般的例子 41 4.5.2 对不存在主机的ARP请求 42 4.5.3 ARP高速缓存超时设置 43 4.6 ARP代理 43 4.7 免费ARP 45 4.8 arp命令 45 4.9 小结 46 第5章 RARP:逆地址解析协议 47 5.1 引言 47 5.2 RARP的分组格式 47 5.3 RARP举例 47 5.4 RARP服务器的设计 48 5.4.1 作为用户进程的RARP服务器 49 5.4.2 每个网络有多个RARP服务器 49 5.5 小结 49 第6章 ICMP:Internet控制报文协议 50 6.1 引言 50 6.2 ICMP报文的类型 50 6.3 ICMP地址掩码请求与应答 52 6.4 ICMP时间戳请求与应答 53 6.4.1 举例 54 6.4.2 另一种方法 55 6.5 ICMP端口不可达差错 56 6.6 ICMP报文的4.4BSD处理 59 6.7 小结 60 第7章 Ping程序 61 7.1 引言 61 7.2 Ping程序 61 7.2.1 LAN输出 62 7.2.2 WAN输出 63 7.2.3 线路SLIP链接 64 7.2.4 拨号SLIP链路 65 7.3 IP记录路由选项 65 7.3.1 通常的例子 66 7.3.2 异常的输出 68 7.4 IP时间戳选项 69 7.5 小结 70 第8章 Traceroute程序 71 8.1 引言 71 8.2 Traceroute 程序的操作 71 8.3 局域网输出 72 8.4 广域网输出 75 8.5 IP源站选路选项 76 8.5.1 宽松的源站选路的traceroute程序示例 78 8.5.2 严格的源站选路的traceroute程序示例
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值