IP:Internet Protocol 网际互连协议
IPCP:IP Control Protocol IP控制协议
ARP:Address Resolution Protocol 地址解析协议
RARP:Reverse Address Resolution Protocol 逆地址解析协议
HTTP:Hypertext Transfer Protocol 超文本传输协议
ICMP:Internet Control Message Protocol 网际控制报文协议
DNS:Domain Name System 域名系统
PPP:Point-to-Point Protocol 点对点协议
TCP:Transmission Control Protocol 传输控制协议
UDP:User Datagram Protocol 用户数据报协议
WWW:World Wide Web 万维网
IMAP:Internet Message Access Protocol 网际报文存取协议
RIP:Routing Information Protocol 路由信息协议
FTP:File Transfer Protocol 文件传输协议
TFTP:Trivial File Transfer Protocol 简单文件传输协议
DHCP:Dynamic Host Configuration Protocol 动态主机配置协议
EGP:External Gateway Protocol 外部网关协议
IGP:Interior Gateway Protocol 内部网关协议
LAN:Local Area Network 局域网
MAN:Metropolitan Area Network
NCP:Network Control Protocol 网络控制协议
P2P:Peer-to-Peer 对等方式
PAN:Personal Area Network 个人区域网
DNS:(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,
而不去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫域名解析。
将IP地址与形象易记的域名一一对应起来,使用户在访问服务器或网站时不使用IP地址,而使用简单易记的域名,通过DNS服务器将域名自动解析成IP地址并定位服务器。
当DNS 客户机向DNS 服务器提交域名查询IP 地址,或DNS 服务器向另一台DNS 服务器提交域名查询IP 地址,DNS 服务器作出响应的过程称为正向解析。反之,当DNS 客户机向DNS 服务器提交IP 地址查询域名,或DNS 服务器向另一台DNS 服务器提交IP 地址查询域名,DNS 服务器作出响应的过程成为反向解析。
递归查询:收到客户机查询请求后,DNS 服务器在自己的缓存或区域数据库中查找,如找到则返回结果;如找不到,DNS 服务器指向转发器定义的其他DNS 服务器进行查询,最终将查询结果返回给客户机。
迭代查询:将请求发给根域DNS 服务器,依序从根域查到顶级域,从顶级域查到二级域,再从二级域查到三级域,经此类推直至找到要解析的地址或域名,然后向客户机所在网络的DNS 服务器发出应答信息,DNS 服务器收到信息后转发给客户机。如果最终都没有找到所需的信息,则向客户机返回错误信息。
地址解析协议(Address Resolution Protocol),其基本功能为透过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。它是IPv4中网络层必不可少的协议,不过在IPv6中已不再适用,并被邻居发现协议(NDP)所替代。
MAC 地址是数据链路层和物理层使用的地址,而IP 地址是网络层和以上各层使用的地址,是一种逻辑地址(IP 地址是使用软件实现的)。在发送数据时,数据从高层到低层,然后才到通信链路上传输。使用IP 地址的IP 数据报一旦交给了数据链路层就被封装成了MAC 帧。**MAC 帧在传送时使用的原地址和目的地址都是硬件地址。连接在通信链路上的设备(主机或路由器)在接受MAC 帧时,根据的是MAC 帧首部的硬件地址。**在数据链路层看不到隐藏在MAC 帧中的IP 地址,只有剥去MAC 帧的首部和尾部后把MAC 层的数据交给网络层后,网络层才能在IP数据报的首部中找到源IP 地址和目的IP 地址。
在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协议要做的事情。所谓地址解析(address resolution)就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。
注意:在点对点链路中不使用ARP,实际上在点对点网络中也不使用MAC地址,因为在此类网络中分别已经获取了对端的IP地址。
在TCP/IP 协议中,A 给B 发送IP 包时,在A 不知道B 的MAC 地址的情况下,A 就广播一个ARP 请求包,请求包中填有B 的IP ,以太网中的所有计算机都会接收这个请求,而正常情况下只有B 会给出ARP 应答包,包中就填充上了B 的MAC 地址,并回复给A 。A 得到ARP 应答后,将B 的MAC 地址放入本机缓存,便于下次使用。
(1)ARP进程在本局域网上广播发送一个ARP请求分组
(2)本局域网上所有的主机上运行的ARP进程都收到此ARP请求分组。
(3)主机B在ARP分组中见到自己的IP地址就向A发送ARP响应分组,并写入自己的硬件地址,相应分组是普通的单播。
(4)主机A收到主机B的ARP响应分组后,就在其ARP高速缓存中写入主机B的IP地址到硬件地址的映射。
(5)另外,当发送主机和目的主机不在同一个局域网中时,即便知道目的主机的MAC地址,两者也不能直接通信,必须经过路由转发才可以。所以此时,发送主机通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外的路由器的MAC地址。于是此后发送主机发往目的主机的所有帧,都将发往该路由器,通过它向外发送。这种情况称为委托ARP或ARP代理(ARP Proxy)。
信道复用的目的是让不同的计算机连接到相同的信道上,以共享信道资源。在一条传输介质上传输多个信号,提高线路的利用率,降低网络的成本。采用信道复用是为了提高系统容量和系统的效率。
常用的信道复用技术有四种:频分复用、时分复用、波分复用和码分复用。
频分复用(Frequency Division Multiplexing,FDM)就是将用于传输信道的总带宽划分成若干个子频带(或称子信道),每一个子信道传输一路信号。频分复用要求总频率宽度大于各个子信道频率之和,同时为了保证各子信道中所传递的信号互不干扰,应在各子信道之间设立隔离带,这样就保证了各路信号互不干扰(条件之一)。频分复用技术的特点是所有子信道传输的信号以并行的方式工作,每一路信号传输时可不考虑传输时延,因而频分复用技术取得了非常广泛的应用。频分复用除传统意义上的频分复用(FDM)外还有一种是正交频分复用(OFDM)。
时分复用(Time Division Multiplexing,TDM)就是将提供给整个信道传输信息的时间划分成若干时间片(简称时隙),并将这些时隙分配给每一个信号源使用,每一路信号在自己的时隙内单独占用信道进行数据传输。时分复用技术的特点是时隙事先规划分配好且固定不变,所以有时候也叫同步时分复用。其优点是时隙分配固定,便于调节控制,适于数字信息的传输;缺点是当某信号源没有数据传输时,它所对应的信道会出现空闲而其他繁忙的信道无法占用这个空闲的信道,因此会降低线路的利用率。
频分复用(Wavelength Division Multiplexing, WDM)在光通信领域人们习惯按波长而不是按频率来命名。因此所谓的波分复用其本质上也是频分复用而已。WDM是在一根光纤上承载多个波长(信道)系统将一根光纤转换为多条“虚拟”光纤,每条“虚拟”光纤独立工作在不同波长上,这样极大地提高了光纤的传输容量。
码分复用(Code Division Multiplexing,CDM)是靠不同的编码来区分各路原始信号的一种复用方式,主要和各种多址技术结合产生了各种接入技术,包括无线和有线接入。
数据链路层的发送方应当让接收方的数据链路层知道,所发送的帧是从什么地方开始到什么地方结束。
数据链路层传送的比特组合必须是不受限制的。
数据链路层必须有差错检测功能。
因特网广泛使用的数据链路层协议都不适用确认和重传机制,即不要求数据链路层向上层提供可靠传输的服务(因为这要付出的代价太高,不合算)。如果在数据链路层传输数据时除了差错并且需要进行改正,那么改正差错的任务就由上层协议(如,运输层TCP协议)来完成。实验证明,这样可以提高通信效率。
从字面意义上,TCP/IP 是指TCP 和IP 两种协议,然而很多情况下它只是利用IP 进行通信时所必须用到的协议群的统称。
OSI七层模型 | TCP/IP 概念层模型 | 功能 | TCP/IP 协议族 |
---|---|---|---|
应用层 | 文件传输,电子邮件,文件服务,虚拟终端 | TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet | |
表示层 | 应用层 | 数据格式化,代码转换,数据加密 | 没有协议 |
会话层 | 解除或建立与其他接点的联系 | 没有协议 | |
传输层 | 传输层 | 提供端对端的接口 | TCP,UDP |
网络层 | 网络层 | 为数据报选择路由 | IP,ICMP,RIP,OSPF,BGP,IGMP |
数据链路层 | 链路层 | 传输有地址的帧以及错误检测功能 | SLIP,CSLIP,PPP,ARP,RARP,MTU |
物理层 | 以二进制数据形式在物理媒体上传输数据 | ISO2110,IEEE802,IEEE802.2 |
包、帧、数据包、段、消息
每个分层中,都会对所发送的数据添加一个首部,在这个首部中包含了该层必要的信息,如发送的不标地址以及协议相关信息。通常,为协议提供的信息为包首部,所要发送的内容为数据。在下一层的角度看,从上一层收到的包全部都被认为是本层的数据。
数据包首部
网络中传输的数据包由首部和上一层传过来的数据组成,首部的结构由协议的具体规范详细定义。在数据包的首部明确标明了协议应该如何读取数据。
网络标识在数据链路的每个段配置不同的值。网络标识必须保证相互连接的每个段的地址不相重复。而相同段内相连的主机必须有相同的网络地址。IP 地址的“主机标识”则不允许在同一个网段内重复出现。由此,可以通过设置网络地址和主机地址,在相互连接的整个网络中保证每台主机的 IP 地址都不会相互重叠。即 IP 地址具有了唯一性。
多播用于将包发送给特定组内的所有主机。由于其直接使用 IP 地址,因此也不存在可靠传输。
相比于广播,多播既可以穿透路由器,又可以实现只给那些必要的组发送数据包
多播使用 D 类地址。因此,如果从首位开始到第 4 位是 “1110”,就可以认为是多播地址。而剩下的 28 位可以成为多播的组编号。
此外, 对于多播,所有的主机(路由器以外的主机和终端主机)必须属于 224.0.0.1 的组,所有的路由器必须属于 224.0.0.2 的组。
现在一个 IP 地址的网络标识和主机标识已不再受限于该地址的类别,而是由一个叫做“子网掩码”的识别码通过子网网络地址细分出比 A 类、B 类、C 类更小粒度的网络。这种方式实际上就是将原来 A 类、B 类、C 类等分类中的主机地址部分用作子网地址,可以将原网络分为多个物理网络的一种机制。
子网掩码用二进制方式表示的话,也是一个 32 位的数字。它对应 IP 地址网络标识部分的位全部为 “1”,对应 IP 地址主机标识的部分则全部为 “0”。由此,一个 IP 地址可以不再受限于自己的类别,而是可以用这样的子网掩码自由地定位自己的网络标识长度。当然,子网掩码必须是 IP 地址的首位开始连续的 “1”。
对于子网掩码,目前有两种表示方式。第一种是,将 IP 地址与子网掩码的地址分别用两行来表示。以 172.20.100.52 的前 26 位是网络地址的情况为例,如下
数据链路和IP 中的地址,分别指的是MAC 地址和IP 地址。前者用来识别同一链路中不同的计算机,后者用来识别TCP/IP 网络中互联的主机和路由器。在传输层也有类似于地址的概念,就是端口号。端口号用来识别同一台计算机中进行通信的不同应用程序。因此,它也被称为程序地址。
端口号的确定
端口号与协议
问题汇总
为什么要三次握手
为了防止已失效的连接请求报文突然又传送到了服务端,因为产生错误。
具体解释: “已失效的连接请求报文段”产生情况:
client 发出的第一个连接请求报文段并没有丢失,而是在某个网络节点长时间滞留,因此导致延误到连接释放以后的某个时间才到达 service。如果没有三次握手,那么此时server收到此失效的连接请求报文段,就误认为是 client再次发出的一个新的连接请求,于是向 client 发出确认报文段,同意建立连接,而此时 client 并没有发出建立连接的情况,因此并不会理会服务端的响应,而service将会一直等待client发送数据,因此就会导致这条连接线路白白浪费。
如果此时变成两次挥手行不行?
这个时候需要明白全双工与半双工,再进行回答。比如:
在三次握手之后,A和B都能确定这么一件事: 我说的话,你能听到; 你说的话,我也能听到。 这样,就可以开始正常通信了,如果是两次,那将无法确定。
为什么要四次挥手
TCP 协议是一种面向连接,可靠,基于字节流的传输层通信协议。TCP 是全双工模式(同一时刻可以同时发送和接收),这就意味着,当主机1发出 FIN 报文段时,只是表示主机1已结没有数据要发送了,主机1告诉主机2,它的数据已经全部发送完毕;但是,这个时候主机1还是可以接受来自主机2的数据;当主机2返回 ACK报文段时,这个时候就表示主机2也没有数据要发送了,就会告诉主机1,我也没有数据要发送了,之后彼此就会中断这次TCP连接。
为什么要等待 2MSL
MSL:报文段最大生存时间,它是任何报文段被丢弃前在网络内的最长时间
原因如下:
第一点: 如果主机1直接 关闭,由于IP协议的不可靠性或者其他网络原因,导致主机2没有收到主机1最后回复的 ACK。那么主机2就会在超时之后继续发送 FIN,此时由于主机1已经关闭,就找不到与重发的 FIN 对应的连接。所以,主机1 不是直接进入 关闭,而是TIME_WAIT 状态。当再次收到 FIN 的时候,能够保证对方收到 ACK ,最后正确关闭连接。
第二点:如果主机1直接 关闭,然后又再向主机 2 发起一个新连接,我们不能保证这个新连接与刚才关闭的连接端口是不同的。也就是说有可能新连接和老连接的端口号是相同的。一般来说不会发生什么问题,但还是有特殊情况出现;假设新连接和已经关闭的老连接端口号是一样的,如果前一次连接的某些数据仍然滞留在网络中( Lost Duplicate ),那些延迟数据在建立新连接之后才到达主机2,由于新连接和老连接的端口号是一样的,TCP 协议就认为哪个延迟的数据时属于新连接的,这样就和真正的新连接的数据包发生混淆了。所以TCP连接要在 TIME_WAIT 状态等待两倍 MSL ,保证本次连接的所有数据都从网络中消失。
因特网标准制定通常要经过以下四个阶段(RFC 2026)
关系:在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务,而要实现本层协议,还需要使用下面一层提供服务。
协议和服务的概念的区分:
1、协议的实现保证了能够向上一层提供服务。本层的服务用户只能看见服务而无法看见下面的协议。下面的协议对上面的服务用户是透明的。
2、协议是“水平的”,即协议是控制两个对等实体进行通信的规则。但服务是“垂直的”,即服务是由下层通过层间接口向上层提供的。上层使用所提供的服务必须与下层交换一些命令,这些命令在OSI中称为服务原语。
网络协议:为进行网络中的数据交换而建立的规则、标准或约定。由以下三个要素组成:
(1)语法:即数据与控制信息的结构或格式。
(2)语义:即需要发出何种控制信息,完成何种动作以及做出何种响应。
(3)同步:即事件实现顺序的详细说明。
1、导引型传输媒体(有线的)有双绞线、 同轴电缆和光纤 ,属于常见的三种传输媒体.
2、双绞线收螺旋扭在一起的两根绝缘导线组成.线对扭在一起可以减少相互间的辐射电磁干扰,双绞线早就用在电话通信中模拟信号的传输,也可用于数据信号的传输,是最常用的传输媒体.
3、同轴电缆也象双绞线那样由一对导体组成,但它们的按"同轴"形式构成线对,最里层是内芯,外包一层绝缘材料,外面再一层屏蔽层,最外面则是起保护作用的塑料外套.内芯和屏蔽层构成一对导体.
4、光纤是光导纤维的简称,它由能传导光波的石英下班纤维,外加保护层构成. 相对于金属来说重量轻、体积(细).用光纤来传输电信号时,在发送端先要将其转换成光信号,而在接收端又要由光检波器瞠原成电信号.
物理层要解决的主要问题:
(1)物理层要尽可能地屏蔽掉物理设备和传输媒体,通信手段的不同,使数据链路层感觉不到这些差异,只考虑完成本层的协议和服务.
(2)给其服务用户(数据链路层)在一条物理的传输媒体上传送和接收比特流(一般为串行按顺序传输的比特流)的能力,为此,物理层应该解决物理连接的建立、维持和释放问题.
(3)在两个相邻系统之间唯一地标识数据电路.
物理层的主要特点:
(1)由于在OSI之前,许多物理规程或协议已经制定出来了,而且在数据通信领域中,这些物理规程已被许多商品化的设备所采用,加之,物理层协议涉及的范围广泛,所以至今没有按OSI的抽象模型制定一套新的物理层协议,而是沿用已存在的物理规程,将物理层确定为描述与传输媒体接口的机械,电气,功能和规程特性.
(2)由于物理连接的方式很多,传输媒体的种类也很多,因此,具体的物理协议相当复杂.
三个问题: 封装成帧、透明传输、差错检测
为什么必须解决:
⑴封装成帧就是在一段数据前后分别添加首部和尾部。接收端以便从收到的比特流中识别帧的开始与结束,帧定界是分组交换的必然要求;
⑵ 透明传输避免消息符号与帧定界符号相混淆;
⑶差错检测防止差错的无效数据帧,浪费网络资源。
怎么解决:
(1)封装成帧就是在一段数据的前后分别添加首部和尾部,这样就构成了一个帧。接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从比特流中识别帧的开始和结束。
(2)为了解决透明传输问题,字节填充法或字符填充:在控制字符SOH、EOT的前面插入一个转义字符ESC(其十六进制编码是1B,二进制是00011011)。而接收端的数据链路层在把数据送往网络层之前删除这个插入的转义字符。
(3)现实的通信链路都不会是理想的。传输过程中,1可能变成0, 0 可能变成1 。这就叫比特差错——误码率。 误码率和信噪比有很大的关系。因此,在计算机网络传输数据时,必须采用各种差错控制技术。目前在数据链路层广泛使用了循环冗余检验(CRC)的检错技术。
IP地址和硬件地址的区别
1、长度的区别:物理地址即硬件地址,由48bit构成;IP地址由32bit组成,是逻辑地址.
2、放置位置的区别:IP地址放IP数据报的首部,而硬件地址则放在MAC帧的首部.
3、使用的区别:在网络层和网络层以上使用IP地址,数据链路层及以下使用硬件地址
为什么要使用这两种不同的地址
因为是解决了不同层次的问题
运输层处于面向通信部分的最高层,同时也是用户功能中的最低层,向它上面的应用层提供服务运输层为应用进程之间提供端到端的逻辑通信,但网络层是为主机之间提供逻辑通信(面向主机,承担路由功能,即主机寻址及有效的分组交换).各种应用进程之间通信需要"可靠或尽力而为"的两类服务质量,必须由运输层以复用和分用的形式加载到网络层.
DP是面向无连接的服务,特点就是,用这种协议传输数据速度快.使用这种协议追求的是传输的即时性而不是传输的质量.在实际应用中比如,qq聊天的语聊,视频,还有网络电话使用的就是UDP协议,还有就是迅雷等一些下载工具用的也是UDP协议.
(1) 端口的作用是对TCP/IP体系的应用进程进行统一的标志,使运行不同操作系统的计算机的应用进程能够互相通信.
(2) 三类端口号
1、熟知端口数值一般为0~1023,标记常规的服务进程;
2、登记端口号,数值为1024~49151,标记没有熟知端口的非常规的服务进程.
3、动态和/或私有端口(Dynamicand/orPrivatePorts):从49152到65535.
(1)不行
(2)收到重复帧不确认相当于确认丢失,发送方会认为接收方一直没有收到所要发送的TCP报文段,然后会一直重复发送该报文段.
在首部中的错误比在数据中的错误更严重,例如,一个坏的地址可能导致分组被投寄到错误的主机。许多主机并不检查投递给他们的分组是否确实是要投递给它们,它们假定网络从来不会把本来是要前往另一主机的分组投递给它们。数据不参与检验和的计算,因为这样做代价大,上层协议通常也做这种检验工作,从前,从而引起重复和多余。因此,这样做可以加快分组的转发,但是数据部分出现差错时不能及早发现。
共有4个站进行码分多址通信。4个站的码片序列为 A:(-1-1-1+1+1-1+1+1) B:(-1-1+1-1+1+1+1-1) C:(-1+1-1+1+1+1-1-1) D:(-1+1-1-1-1-1+1-1) 现收到这样的码片序列S:(-1+1-3+1-1-3+1+1)。问哪个站发送数据了?发送数据的站发送的是0还是1?
解:S•A=(+1-1+3+1-1+3+1+1)/8=1, A发送1
S•B=(+1-1-3-1-1-3+1-1)/8=-1, B发送0
S•C=(+1+1+3+1-1-3-1-1)/8=0, C无发送
S•D=(+1+1+3-1+1+3+1-1)/8=1, D发送1
要发送的数据为1101011011。采用CRC的生成多项式是P(X)=X4+X+1。试求应添加在数据后面的余数。数据在传输过程中最后一个1变成了0,问接收端能否发现?若数据在传输过程中最后两个1都变成了0,问接收端能否发现?采用CRC检验后,数据链路层的传输是否就变成了可靠的传输?
作二进制除法,1101011011 0000 10011 得余数1110 ,添加的检验序列是1110.作二进制除法,两种错误均可发展仅仅采用了CRC检验,缺重传机制,数据链路层的传输还不是可靠的传输。
(1)子网掩码为255.255.255.0代表什么意思?
有三种含义
其一是一个A类网的子网掩码,对于A类网络的IP地址,前8位表示网络号,后24位表示主机号,使用子网掩码255.255.255.0表示前8位为网络号,中间16位用于子网段的划分,最后8位为主机号。第二种情况为一个B类网,对于B类网络的IP地址,前16位表示网络号,后16位表示主机号,使用子网掩码255.255.255.0表示前16位为网络号,中间8位用于子网段的划分,最后8位为主机号。
第三种情况为一个C类网,这个子网掩码为C类网的默认子网掩码。
(2)一网络的现在掩码为255.255.255.248,问该网络能够连接多少个主机?
255.255.255.248即11111111.11111111.11111111.11111000. 每一个子网上的主机为(2^3)=6 台 掩码位数29,该网络能够连接8个主机,扣除全1和全0后为6台。
(3)一A类网络和一B网络的子网号subnet-id分别为16个1和8个1,问这两个子网掩码有何不同?
A类网络:11111111 11111111 11111111 00000000
给定子网号(16位“1”)则子网掩码为255.255.255.0
B类网络 11111111 11111111 11111111 00000000
给定子网号(8位“1”)则子网掩码为255.255.255.0但子网数目不同
(4)一个B类地址的子网掩码是255.255.240.0。试问在其中每一个子网上的主机数最多是多少?
(240)10=(128+64+32+16)10=(11110000)2 Host-id的位数为4+8=12,因此,最大主机数为: 2^12-2=4096-2=4094
11111111.11111111.11110000.00000000 主机数2^12-2
(5)一A类网络的子网掩码为255.255.0.255;它是否为一个有效的子网掩码?
是 10111111 11111111 00000000 11111111
(6)某个IP地址的十六进制表示C2.2F.14.81,试将其转化为点分十进制的形式。这个地址是哪一类IP地址?
C2 2F 14 81–à(1216+2).(216+15).(16+4).(8*16+1)—à194.47.20.129 C2 2F 14 81 —à11000010.00101111.00010100.10000001 C类地址
(7)C类网络使用子网掩码有无实际意义?为什么?
有实际意义.C类子网IP地址的32位中,前24位用于确定网络号,后8位用于确定主机号.如果划分子网,可以选择后8位中的高位,这样做可以进一步划分网络,并且不增加路由表的内容,但是代价是主机数相信减少.
设某路由器建立了如下路由表:
目的网络 子网掩码 下一跳
128.96.39.0 255.255.255.128 接口m0
128.96.39.128 255.255.255.128 接口m1
128.96.40.0 255.255.255.128 R2
192.4.153.0 255.255.255.192 R3
*(默认) —— R4
现共收到5个分组,其目的地址分别为:
(1)128.96.39.10
(2)128.96.40.12
(3)128.96.40.151
(4)192.153.17
(5)192.4.153.90
试分别计算其下一跳:
1)分组的目的站IP地址为:128.96.39.10。先与子网掩码255.255.255.128相与,得128.96.39.0,可见该分组经接口0转发。
(2)分组的目的IP地址为:128.96.40.12。
① 与子网掩码255.255.255.128相与得128.96.40.0,不等于128.96.39.0。
② 与子网掩码255.255.255.128相与得128.96.40.0,经查路由表可知,该项分组经R2转发。
(3)分组的目的IP地址为:128.96.40.151,与子网掩码255.255.255.128相与后得128.96.40.128,与子网掩码255.255.255.192相与后得128.96.40.128,经查路由表知,该分组转发选择默认路由,经R4转发。
(4)分组的目的IP地址为:192.4.153.17。与子网掩码255.255.255.128相与后得192.4.153.0。与子网掩码255.255.255.192相与后得192.4.153.0,经查路由表知,该分组经R3转发。
(5)分组的目的IP地址为:192.4.153.90,与子网掩码255.255.255.128相与后得192.4.153.0。与子网掩码255.255.255.192相与后得192.4.153.64,经查路由表知,该分组转发选择默认路由,经R4转发。
假设要发送的数据为11001010,采用的CRC的生成多项式为P(x)=X3+X+1。试求应添加在数据后面的余数?如果采用了CRC校验,数据链路层是否就变成了可靠的传输?
采用了CRC循环以后,接受端可以检测该帧是否有传输的错误,即在外界干扰下是否有0变成1,1变成0 的情况,如果没有错误,就接收,如果有错误,则直接丢弃该帧。不检查帧的顺序、重复等。数据链路层并不具备保证可靠传输的“重传”、“确认”机制,所以不是可靠的传输。
某单位分配到一个地址块136.23.12.64/26。现在需要进一步划分为4个一样大的子网。试问:
(1)每一个子网的网络前缀有多长?
(2)每一个子网中有多少个地址?
(3)每一个子网的地址是什么?
(4)每一个子网可分配给主机使用的最小地址和最大地址是什么?
(1)每个子网前缀28位。
(2)每个子网的地址中有4位留给主机用,因此共有16个地址。
(3)四个子网的地址块是:
第一个地址块136.23.12.64/28,可分配给主机使用的
最小地址:136.23.12.01000001=136.23.12.65/28
最大地址:136.23.12.01001110=136.23.12.78/28
第二个地址块136.23.12.80/28,可分配给主机使用的
最小地址:136.23.12.01010001=136.23.12.81/28
最大地址:136.23.12.01011110=136.23.12.94/28
第三个地址块136.23.12.96/28,可分配给主机使用的
最小地址:136.23.12.01100001=136.23.12.97/28
最大地址:136.23.12.01101110=136.23.12.110/28
第四个地址块136.23.12.112/28,可分配给主机使用的
最小地址:136.23.12.01110001=136.23.12.113/28
最大地址:136.23.12.01111110=136.23.12.126/28
假定网络中的路由器A的路由表有如下的项目(格式同上题):
N1 4 B
N2 2 C
N3 1 F
N4 5 G
现将A收到从C发来的路由信息(格式同上题):
N1 2
N2 1
N3 3
N4 7
试求出路由器A更新后的路由表(详细说明每一个步骤)。
N1 3 C 不同的下一跳,距离更短,改变
N2 2 C 不同的下一跳,距离一样,不变
N3 1 F 不同的下一跳,距离更大,不改变
N4 5 G 无新信息,不改变
主机A向主机B连续发送了两个TCP报文段,其序号分别为70和100。试问:
(1) 第一个报文段携带了多少个字节的数据?
(2) 主机B收到第一个报文段后发回的确认中的确认号应当是多少?
(3) 如果主机B收到第二个报文段后发回的确认中的确认号是180,试问A发送的第二个报文段中的数据有多少字节?
(4) 如果A发送的第一个报文段丢失了,但第二个报文段到达了B。B在第二个报文段到达后向A发送确认。试问这个确认号应为多少?
(1)第一个报文段的数据序号是70到99,共30字节的数据。
(2)确认号应为100.
(3)80字节。
(4)70
主机A向主机B发送TCP报文段,首部中的源端口是m而目的端口是n。当B向A发送回信时,其TCP报文段的首部中源端口和目的端口分别是什么?
分别是n和m。
TCP的拥塞窗口cwnd大小与传输轮次n的关系如下所示:
cwnd 1 2 4 8 16 32 33 34 35 36 37 38 39
n 1 2 3 4 5 6 7 8 9 10 11 12 13
cwnd 40 41 42 21 22 23 24 25 26 1 2 4 8
n 14 15 16 17 18 19 20 21 22 23 24 25 26
(1)试画出如图5-25所示的拥塞窗口与传输轮次的关系曲线。
(2)指明TCP工作在慢开始阶段的时间间隔。
(3)指明TCP工作在拥塞避免阶段的时间间隔。
(4)在第16轮次和第22轮次之后发送方是通过收到三个重复的确认还是通过超市检测到丢失了报文段?
(5)在第1轮次,第18轮次和第24轮次发送时,门限ssthresh分别被设置为多大?
(6)在第几轮次发送出第70个报文段?
(7)假定在第26轮次之后收到了三个重复的确认,因而检测出了报文段的丢失,那么拥塞窗口cwnd和门限ssthresh应设置为多大?
(2) 慢开始时间间隔:【1,6】和【23,26】
(3) 拥塞避免时间间隔:【6,16】和【17,22】
(4) 在第16轮次之后发送方通过收到三个重复的确认检测到丢失的报文段。在第22轮次之后发送方是通过超时检测到丢失的报文段。
(5) 在第1轮次发送时,门限ssthresh被设置为32 在第18轮次发送时,门限ssthresh被设置为发生拥塞时的一半,即21. 在第24轮次发送时,门限ssthresh是第18轮次发送时设置的21
(6) 第70报文段在第7轮次发送出。
(7) 拥塞窗口cwnd和门限ssthresh应设置为8的一半,即4.
用TCP传输256字节数据。设置接收窗口为100字节,而TCP报文段每次也是传送100字节的数据。假设发送方和接收方的序号分别为100和200。试画出TCP从连接建立、数据传输到连接释放的工作示意图。