云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > TCP - IP学习笔记

TCP - IP学习笔记

  • 62 次阅读
  • 3 次下载
  • 2025/6/10 6:34:08

TCP/IP笔记

《TCP/IP详解》学习笔记1——链路层

重点知识:链路层的作用、以太网的封装、SLIP和PPP协议以及链路的重要特性(MTU和串行线路吞吐量的计算)。 1、链路层的作用

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

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

2、以太网的封装

SA(6) | DA(6) | TYPE(2) | DATA(46-1500) | CRC(4)

两字节的TYPE字段定义了后续数据的类型,用来说明生成数据的网络层协议。0x0800表示数据类型为IP数据报,0x0806表示ARP请求/应答。此外,以太帧中数据段部分有最小长度要求46字节,在数据长度不够时需插入填充字节。

3、两种协议

SLIP——串行线路协议;PPP是点对点协议。两种协议都是在串行线路上封装IP数据报的方法,提供了一种低速接入的解决方案。以这种方式入网时,用户需要的设备包括一台PC、一条电话线、一台调制解调器(MODEM)、一根RS-232电缆,利用调制解调器通过公共电话网进行Internet连接。使用SLIP或PPP协议与主机通信,使本地PC具有IP地址,成为Internet的一部分。以这种方式上网的用户,每次在连接Internet时会被临时分配到一个IP地址,这样的地址称为动态IP地址。

4、链路的重要特性

每一种数据链路层协议对数据帧的长度都有一个限制,其最大值称为MTU,超过这个值就要进行分片。

串行线路吞吐量的计算:如果线路速率是9600 b/s,而一个字节有8bit,加上一个起始比特和一个停止比特,那么线路的速率就是9600 / ( 8 + 2 ) = 960 B/s(字节/秒)。如果传输1024字节就需要1024 / 960 = 1066 ms。

使用环回接口的原因:

为了标识和管理网络设备(如路由器、pc),我们通常会利用到这些设备的接口(包括物理接口和逻辑接口)上设置的IP地址。但很多情况下,尽管该设备未脱离网络,由于其管理地址所处的接口状态处于down,该设备便无法管理(因为物理连接断开,接口协议起不来)。为了解决这一问题,于是便出现了loopback接口,该接口为设备上一个逻辑接口,接口状态不受物理端口up/down的影响,只要设备的系统协议不出问题,该接口就不会down 掉。由此可见loopback接口的地址无疑是标示物理设备本身的最佳选择,只要设备运行正常,它将永处于up状态。 在实际的使用中,环回接口主要用作测试,系统把IP地址127.0.0.1分配给它。

《TCP/IP详解》学习笔记2——IP协议、ARP协议

可以认为IP协议、ARP协议以及RARP协议处于同一层,所以把这三个协议放在一起学习。

1 / 16

TCP/IP笔记

1、IP网际协议

IP协议是TCP/IP协议族最核心的部分,所有的TCP,UDP,IMCP,IGCP的数据都以IP数据格式传输。IP提供不可靠无连接的数据服务,不可靠指不能保证IP数据报成功到达目的地,无连接指IP数据报的处理是相互独立的可以不按发送顺序接收。

IP协议中需掌握的知识点有:IP首部的格式,IP如何进行路由选择和如何进行子网寻址。

IP首部长度为20个字节,传输时按大字节序,即高字节的数据存放在低地址,低字节存放在高地址,传输时先传低地址的数据。IP首部中各个字节的含义用时再翻书也来得及。

如何进行IP路由选择?

当IP数据报组装完成后,如何将它送到目的地,这就是我们现在要解决的问题。 如果目的主机与源主机为点对点链路连接或者在同一个以太网上,IP数据报就直接送到目的主机上;

如果主机通过若干路由和目的主机进行连接,那么路由器就要通过IP包信息对数据报进行转发,IP的路由选择是逐跳进行的,有下面三部工作要做。

(1)搜索路由表(IP层在内存中有一个路由表),寻找能与目的IP地址完全匹配的表目;

(2)搜索路由表,寻找能与目的网络号相匹配的表目; (3)搜索路由表,寻找标为“默认”的路由表。

如果上面步骤都为成功,该数据就不能被传送,这一点再次证明IP是不可靠的。

如何进行子网寻址及子网的划分?

IP地址=网络号+主机号,进行子网编码后将主机号再分为子网号+主机号。子网划分缩小了路由表的规模,许多网络可以通过单个表目就可以访问了。例如一个B类IP地址,网络号16位,剩下16bit中8bit用于子网号8bit用于主机号,就允许有254个子网,每个子网可以有254个主机。通过子网掩码知道多少比特用于子网号多少比特用于主机号。例如一个B类IP地址的子网掩码为255.255.255.192,它的子网号有10bit,主机号有6bit。

2、ARP协议

为了让报文在链路层上传送,即当一台主机把以太网数据帧发送到另一台主机时,必须知道目的主机的物理地址,即根据6字节的以太网地址来确定目的接口。此时需要实现32比特IP地址到48比特物理地址的映射,采用的是ARP协议。

ARP高效运行的关键是由于每个主机上都有一个ARP高速缓存,这个缓存存放了最近一段时间IP地址到硬件地址之间的映射记录。

当主机要发送一个IP包的时候,首先查一下自己的ARP高速缓存,如果查询的IP到硬件地址的映射不存在,那么主机就向网络发送ARP协议广播包,这个广播包里面就有待查询的IP地址,收到广播包的所有主机都会查询自己的IP地址,如果收到广播包的某一个主机发现自己符合条件,发送ARP应答,这个ARP应答包含IP地址及对应的硬件地址,而广播主机收到ARP包后会更新自己的ARP缓存。收到ARP应答后,使ARP进行请求-应答交换的IP数据报现在就可以传送了。

还有个知识点需要掌握,即ARP代理。如果ARP请求是从一个网络的主机发往另一个网络的主机,那么连接这两个网络的路由器就可以回答该请求,这个过程称作ARP代理。

下图是本机的ARP高速缓存信息,从中可以得到解析出的IP->硬件地址的映射。这样

2 / 16

TCP/IP笔记

的高速缓存是有生存时限的。

TCP/IP详解学习笔记——ICMP

ICMP(英特网控制报文协议)是IP层的一个组成部分,它传递差错报文以及其他需要注意的信息,它经常被IP层或TCP,UDP使用,ICMP报文封装在IP数据包内进行传输。

ICMP报文格式如下:

类型(8位)| 代码(8位) | 校验和(16位)| 报文内容(根据类型和代码的不同而改变) ICMP报文的类型由类型字段和代码字段共同决定。

由于ICMP报文的类型有15种,本章先举两个查询报文和一个差错报文做简单介绍。

ICMP地址掩码请求和应答。ICMP地址请求掩码用于无盘系统在引导过程中获取自己的子网掩码,请求和应答报文的格式如下:

类型(8位)| 代码(8位) | 校验和(16位)| 标识符(16位)|序列号(16位)|

子网掩码(32位)

请求报文类型为17,应答报文类型18;请求报文发往广播地址,应答地址为单播地址。

ICMP时间戳请求与应答,时间戳请求允许系统向另一个系统查询当前的时间,根据查询的时间结果可以对本地时钟进行调整,以使本地时钟与主机始终匹配。

ICMP时间戳请求与应答报文的格式如下: 类型(8位)|代码(8位)|校验和(8位) 标识符(16位)|序列号(16位) 发起时间戳(4字节) 接收时间戳(4字节) 传送时间戳(4字节)

后面两个时间一般设定为相同值,往返时间rtt=收到应答时间-发送请求的时间。

ICMP端口不可达差错,它是ICMP目的不可达报文中的一种,使用UDP查看ICMP差错报文中附加信息。如果收到一份UDP数据报而目的端口与某个正在使用的进程不相符,UDP即返回ICMP不可达报文。

TCP/IP详解学习笔记——PING

PING程序是为了测试另一个主机是否可达,即我们俗称的另一个主机可否PING通。它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主

3 / 16

TCP/IP笔记

机的存在,可以初步判断目标主机的操作系统等。

运行PING程序的主机我们称作客户,而被PING的主机称为服务器,即客户机PING服务器。

发送的数据包为ICMP回显请求和回显应答报文,它们的格式如下: 类型(8位,0或8)|代码(8位,0)|校验和(16位) 标识符(16位)|序号(16位) 选项数据

一般来说可以进行三种PING测试:PING本地主机,PING网关IP,PING远程IP。 PING本地主机:

C:\\Documents and Settings\\Administrator>ping 192.168.1.102

Pinging 192.168.1.102 with 32 bytes of data:

Reply from 192.168.1.102: bytes=32 time<1ms TTL=128 Reply from 192.168.1.102: bytes=32 time<1ms TTL=128 Reply from 192.168.1.102: bytes=32 time<1ms TTL=128 Reply from 192.168.1.102: bytes=32 time<1ms TTL=128

Ping statistics for 192.168.1.102:

Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds:

Minimum = 0ms, Maximum = 0ms, Average = 0ms

如果显示内容为Request timed out则表明网卡安装或配置有问题。将网线断开再次执行此命令,如果显示正常,则说明本机使用的IP地址可能与另一台正在使用的机器IP地址重复了。如果仍然不正常,则表明本机网卡安装或配置有问题,需继续检查相关网络配置。 PING网关:

C:\\Documents and Settings\\Administrator>ping 192.168.1.1

Pinging 192.168.1.1 with 32 bytes of data:

Reply from 192.168.1.1: bytes=32 time=1ms TTL=64 Reply from 192.168.1.1: bytes=32 time=3ms TTL=64 Reply from 192.168.1.1: bytes=32 time<1ms TTL=64 Reply from 192.168.1.1: bytes=32 time<1ms TTL=64

Ping statistics for 192.168.1.1:

Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds:

Minimum = 0ms, Maximum = 3ms, Average = 1ms 此时表明本地局域网路由器运行正常。

PING远程IP:过程与上面两种相类似,如果能PING通说明该客户能够接入到互联网中。

观察PING的结果:

bytes=32是指ICMP报文的大小为32个字节;

4 / 16

搜索更多关于: TCP - IP学习笔记 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

TCP/IP笔记 《TCP/IP详解》学习笔记1——链路层 重点知识:链路层的作用、以太网的封装、SLIP和PPP协议以及链路的重要特性(MTU和串行线路吞吐量的计算)。 1、链路层的作用 为IP模块发送和接收IP数据报; 为ARP模块发送ARP请求和接收ARP应答; 为RARP模块发送RARP请求和接收RARP应答; 2、以太网的封装 SA(6) | DA(6) | TYPE(2) | DATA(46-1500) | CRC(4) 两字节的TYPE字段定义了后续数据的类型,用来说明生成数据的网络层协议。0x0800表示数据类型为IP数据报,0x0806表示ARP请求/应答。此外,以太帧中数据段部分有最小长度要求46字节,在数据长度不够时需插入填充字节。 <

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com