【计算机网络】题目汇总

!!!写在前面:由于缺少答案,仅仅是根据我个人的理解、上网看书(课本资源共享协会等)、同学讨论等等而来的。仅仅当作参考,千万别当成标准答案!!

第一章 计算机网络和因特网

在使用当前互联网基础架构是,你认为什么要素是用户最关心的?又是什么原因制约着该要素?简要阐述制约的原因及如何解决。

:网速。
1)网络协议限制了物理带宽的使用(如CSMA/CD、TCP可靠数据传输)
2)信道利用率低
3)时延:传输时延、传播时延、处理时延、排队时延
传输时延:把分组推入到信道当中的时间,如果用L比特表示分组的长度,用Rbps表示路由器A->路由器B的信道带宽,则传输时延(s)是L/R。
传播时延:分组在信道中的传输时间,等于两台路由器之间的距离除以传播速率(光速)。
处理时延:节点检查分组首部和决定分组导向何处的时间等。
排队时延:节点缓存队列中分组排队所经历的时延。
4)流量控制:发送方速率应匹配接收方应用进程的接收速率,从而抑制了发送方的发送速率。
5)拥塞控制:数据报长度应小于拥塞窗口,也应小于流量窗口,当出现拥塞时,发送方应减小发送速率。
解决办法:安装缓存器,增加网络带宽等。

电路交换、报文交换、分组交换的对比

电路交换
优点(1)传输时延特别小(2)双方物理链路一旦建立,随时通信,实时性强(3)数据传输正确性强
缺点(a)电路交换平均建立时间对计算机通信来说长 (b)物理通路被通信双方独占,信道利用率低 (c )难以进行差错控制

报文交换
优点(1)不存在连接建立时延,随时发送报文(2)采用存储转发的传输方式,使路径多选择性,提高传输可靠性;便于不同类型,不同规格计算机之间进行通信;提供多目标服务;允许建立数据传输优先级(3)提高了通信线路的利用率
缺点(a)转发时延大,实时性差 (b)只适用于数字信号 (c ) 需要网络结点有大的缓冲区储存整个报文,增加时延

分组交换
优点 (1)加速了传输速度,时延相比报文传输减小 (2)简化了存储管理 (3)减小了出错几率和重发数据量 (4)更适用于优先级策略
缺点 (a)节点交换机需要有很强的处理能力 (b)传送信息量增多,降低了通信效率,增加了处理时间 (c )可能出现失序、丢失、重复的问题

什么是协议?分层好处?TCP/IP协议栈的5层功能及相关协议

协议是因特网各个层次运行的标准,分为应用层,传输层,网络层,链路层,物理层。

应用层:为应用层程序和应用层协议驻留,设计HTTP、DNS、SMTP等协议
运输层:供不同主机进程端到端的通信,设计TCP、UDP等协议
网络层:提供不同主机间的通信服务,涉及IP等协议
数据链路层:提供给帧通过链路一段到另一端的服务,涉及arp等协议
物理层:将帧从物理信道上一个元素移动到另一个元素

(1)各层次分明,中立性好
(2)灵活性好
(3)易于管理

网络中常用IP地址、MAC地址、PORT地址,它们在跨网段传递分组时分别发挥着什么作用?

IP地址用来寻找目的网段目的主机的,路由器通过用自己的子网掩码和目的主机ip地址按位与判断是不是和自己处于同一个网段;并且利用ip地址进行路由选择。

MAC地址是用于链路层传递分组的。

PORT地址是寻找目的主机的目的进程的。

第二章 应用层

HTTP中非持续连接和持续连接计算问题

例:请求一个含有10个jpeg图片html文件的web页面

  1. 串行传输&&非持续连接
    T = 2*RTT(请求web页面的时间)+10*2*RTT(请求10张图片时间)=22RTT
  2. 串行传输&&持续连接
    T = 2*RTT(请求web页面的时间)+10*RTT(请求10张图片时间)=12RTT
  3. 并行传输(最大并行数量设为5)&&非持续连接
    T = 2*RTT(请求web页面的时间)+2*2*RTT(2次并行连接,每次2个RTT) = 6RTT
  4. 并行传输(最大并行数量设为5)&&持续连接
    T = 2*RTT(请求web页面的时间)+2*RTT(2次并行传输)=4RTT
  5. 流水线类型&&非持续连接
    T = 2*RTT(请求web页面时间)+2*RTT(流水线不间断请求)=4RTT
  6. 流水线类型&&持续连接
    T = 2*RTT(请求web页面时间)+RTT(流水线不间断请求)=3RTT

SMTP发送邮件的过程

  1. 发送方调用电子邮件代理程序并提供接收方的邮箱地址,撰写报文,然后指示用户代理发送该报文。
  2. 发送方的邮件代理把报文发给他的邮件服务器,在那里该报文被放在报文队列中。
  3. 运行在发送方的邮件服务器上的SMTP客户端发现了报文队列中的这个报文,他就要创建一个到运行在接受方邮件服务器上的SMTP服务器的TCP连接。
  4. 在经过一些初始SMTP握手后,SMTP客户通过该TCP连接发送到报文
  5. 在接收方邮件服务器上,SMTP的服务器端接收该报文。接收方的邮件服务器将该报文放入接收方的邮箱中。
  6. 接收方在方便地时候,可以调用用户代理阅读该报文。

为什么要设置邮件服务器,而不是点对点地发送?

技术上可以直接发送邮件给收件人。
但是对于接受方而言,为了能使其及时接受在任何时候到达的新邮件,他的PC必须总是不间断的运行着并一直保持在线,这对许多因特网用户而言是不现实的。
对于发送方而言,若接收方邮件服务器未打开,发送方将无法直接发送该邮件,只能通过一次次尝试发送,无疑是耗时耗力的。

DNS查询过程

老师最后一节讲的(尽快DNS解析)

以www.baidu.com为例,首先主机向本地dns发送请求,发现本地域名服务并没有该网址解析,然后查看是否缓存了www.baidu.com的权威域名服务器,若有该缓存直接向该权威域名服务器发送请求,获取www.baidu.com为ip地址,然后回复主机该ip地址;若没有该缓存,但有com 顶级域名服务器的缓存,则向该顶级域名服务器查询权威域名服务器的地址,若没有com 顶级域名服务器的缓存记录,则向根域名服务器获取知名com顶级域名服务器的地址,然后再进行后继查询。

手动查询

从根开始查询,不再累述了

域名注册

同样以www.networkutopia.com为例:
首先注册域名时,需要向域名注册登记机构提供基本和辅助权威DNS服务器的名字和IP地址,将保证一个ns 类型(networkutopia.com,dns1.networkutopia.com,ns)和一个a类型(dns1.networkutopia.com, 212.212.212.1,A)记录输入到TLD com服务器。
自身必须确保www.networkutopia.com的A记录类型和mail.networkutopia.com的MX记录类型(如果提供邮件服务器服务的话)输入到你的权威域名服务器中。

第三章 传输层

TCP、UDP提供的服务

  1. 多路复用(在源主机从不同套接字中收集数据块,并且为每个数据块封装上首部信息从而生成报文段,然后将报文段放到网络层中)、多路分解(将运输层报文段中数据交付到正确的套接字)
  2. 差错检验功能。

除此之外,TCP还提供了几种附加服务。首先是可靠数据传输、面向连接的服务,其次是拥塞控制等等

UDP的优缺点

优点

  1. 关于发送什么数据以及何时发送的应用层控制更加精细。
  2. 无须建立连接,因此UDP不需要建立连接的时延
  3. 无连接状态,理论上能支持更多的活跃用户
  4. 分组首部开销小,TCP报文段有20字节首部开销,而UDP只需要8个字节的首部开销。

缺点

  1. 不保证数据的可靠传输(即为不保证报文段的交付、不保证报文段的按序交付、不保证报文段的数据完整性)
  2. 没有拥塞控制。

TCP和UDP都没有提供网络带宽和时延的保证。

UDP校验和计算

如下面有3个16比特的字(相比课本不同的地方是n2第一位为1)
n1 = 0110 0110 0110 0000
n2 = 1101 0101 0101 0101
n3 = 1000 1111 0000 1100
首先前两个数
sum12 = n1 + n2 = 0011 1011 1011 0101(此时有进位回卷)
sum12 = sum12 + 1 = 0011 1011 1011 0110
再将其和第三个数进行运算
sum123 = sum12 + n3 = 1100 1010 1100 0010
此时按位取反即为校验码0011 0101 0011 1101

GBN和SR的区别

首先,GBN允许发送方发送多个分组(当有多个分组可用时)而无需等待确认,但是也受限于流水线中未确认分组数不能超过某个最大允许数N。当分组超时后,发送方将base~nextseqnum-1段的分组全部重发一遍。接收方没有设置窗口,当收到乱序到达分组则进行丢弃,并回复ack当前需要的分组序号,GBN是单个计时器。

SR不同于GBN的一点是SR接收方也设置了窗口,接收时可以缓存乱序到达的分组,并且回复收到分组的ack(与GBN相比少去了累计应答的机制)而发送方收到ack后,若ack=base自动移动到最近没有确认的分组。分组超时后,发送方仅仅对该超时的分组进行重发,SR是多个计时器。

GBN计算问题

考虑一个GBN协议,其发送方窗口为4,序号范围为1024。假设在时刻t,接收方期待的下一个有序分组的序号是k。假设媒体不会对报文重新排序。回答下列问题
a、在t时刻,发送方窗口内的报文序号可能是多少?论证你的回答。
b、在t时刻,在当前传播回发送方的所有可能报文中ack字段的所有可能值是多少?论证你的回答。
a、首先ack(k-5)发送方一定收到了(至少能发送第k-1个分组),且接收方还没有发送ack(k)。
(k-4,k-3,k-2,k-1) 发送方ack(k-4)-ack(k-1)都没有收到;
(k-3,k-2,k-1,k) 发送方收到了ack(k-4),ack(k-3)-ack(k-1)发送方还没有收到;
(k-2,k-1,k,k+1) 发送方收到了ack(k-3),ack(k-2)-ack(k-1)都没有收到
(k-1,k,k+1,k+2) 发送方收到了ack(k-2),ack(k-1)-ack(k)都没有收到
(k,k+1,k+2,k+3) 发送方收到了ack(k-1)。
b、
(k-5,k-4,k-3,k-2,k-1),(k-4,k-3,k-2,k-1)(情况a.1)
(k-3,k-2,k-1)(情况a.2)
(k-2,k-1)(情况a.3)
(k-1)(情况a.4)
()(情况a.5)
如果看总的话(k-5到k-1)k-5发送方一定收到了。

TCP可靠数据传输发送方和接收方各有什么特点,接收方收到错误或者乱序的数据包会如何处理?

发送方:

  1. 单一计时器,只为最早发送还没有得到ack响应的分组计时超时后重发该分组。
  2. 发送方有发送缓存,多个发送方窗口
  3. 当收到三个重复ack之后会快速重传该分组(快速重传机制)
  4. 维护接受窗口来进行流量控制
  5. 可以感知网络的拥塞程度来限制发送速率
  6. 采用应答机制,发送方发送的每个报文段都必须得到接收方的回答,才认为传输成功

接收方:

  1. 接收方有接收缓存,多个接收方窗口
  2. 采用累积确认,保证确认号之前的分组已经正确收到。
  3. 收到错误的数据包则对最近一次已经确认过的分组进行再次确认
  4. 收到乱序的数据包则根据上层应用的设置一般是进行缓存当完整的接收到按序的分组后再向上递交。

拥塞控制和流量控制原理、区别、如何协同工作?

拥塞控制(三个阶段)

  1. 慢启动
    在一条TCP连接开始后,cwnd的值初始设置为1个mss,每当传输的报文段首次被确认后就增加一个mss,即每个RTT发送速率翻倍。
  2. 拥塞避免
    当cwnd的值超过慢启动门限(ssthresh)后,进入拥塞避免阶段,当窗口所有报文段都确认后(1个RTT时间),cwnd大小加一。
  3. 快速恢复
    当收到3个重复ack后,将sshresh设置为cwnd的一半,然后将cwnd设置为ssthresh值加3,然后重传丢失的报文段。(reno机制)

如果在上面几个阶段中出现了定时器超时事件,将ssthresh值设置为cwnd/2,并且cwnd设置为1mss,进入到慢启动阶段。

流量控制
TCP让接收方提供一个接收窗口变量(rwnd),用来告知发送方其还有多少可用的缓存空间。设接收方接收总缓存为RcvBuffer,接收方的应用进程从缓存中读出的数据流最后一个字节的编号为LastByteRead(对于应用层而言最后读到的字节),网络中到达的并且已放入接收方接收缓存中的数据流的最后一个字节的编号为LastByteRcvd(对于传输层而言最后读到的字节),则rwnd=RcvBuffer-[LastByteRcvd-LastByteRead]。

区别:流量控制是为了让发送方发送速率与接收方接收速率进行匹配,避免接收方缓存溢出的情况。而拥塞控制是针对整个互联网而言,是为了防止分组拥塞网络而抑制发送方的发送速率。

协同工作办法:让发送方未被确认的数据量不超过cwnd和rwnd的最小值。

TCP三次握手

  1. 客户端的TCP首先向服务器端的TCP发送一个特殊的TCP报文段(SYN位置一,随机选一个初始序号client_isn,令seq=client_isn)
  2. 一旦包含TCP SYN报文段的IP数据报到达服务器主机,服务器选择自己的初始序号server_isn,确认序号ack = client_isn+1,并且SYN字段置为一
  3. 客户端收到SYNACK报文段后,客户也要给该连接分配缓存和变量,回复服务器seq = client_isn+1,ack = server_isn + 1,可以携带客户到服务器的数据。

TCP四次挥手

  1. TCP协议规定通过发送⼀个FIN段(FIN被置位1)来发起关闭操作,发送端发送
    FIN段给接收端,告知它数据已发送完毕,请求断开TCP连接。同时FIN报文段还
    包含着对最近收到的数据进行ACK。
  2. 接收端接收端FIN报文段后,对FIN进行确认,发送ACK=上⼀个seq+1给发送
    端。
  3. 接收端将连接关闭发送给上层应用程序,由应用程序发起连接关闭操作。此时接
    收端由被动关闭连接变成主动,并发送FIN报文段给发送端。
  4. 发送端接收到FIN后,发送回ACK给接收端后,TCP连接终止。如果FIN丢失,发
    送FIN的那端需要重新发送FIN,直到接收到ACK为止。

第四五章 网络层

虚电路网络和数据报网络的区别

  1. 可靠数据传输由网络保证/用户主机保证
  2. 发送数据前需要/不用先建立连接
  3. 同一条虚电路的分组均按照统一路由转发/每个分组独立转发
  4. 若路径中一个路由器损坏则所有分组都无法到达目的地/则可能都其他,剩余分组可选择其他路由器到达目的地
  5. 分组按序/乱序到达
  6. 差错控制由网络也可以由用户主机负责/用户主机负责

IP地址的划分有哪几种方式每种方式的优缺点是什么?请简述

参考网站

  1. 分类的IP地址
    IP地址:: = {<网络号>,<主机号>}
    不同的网络号和主机号的设置决定了IP地址的分类,包括了A、B、C、D、E共5类。
    缺点分类不灵活,造成ip地址浪费。
  2. 子网划分
    IP地址:: = {<网络号>,<子网号>,<主机号>}
    相比第一种分配方式灵活性高了一些,但是是存在ip地址浪费。
  3. 无分类编址CIDR
    IP地址:: = {<网络前缀>,<主机号>}
    这种方式抛弃了网络号,应该分配更加灵活,但是还是存在ip地址浪费。

IP地址划分的计算问题

现有形如158.18.132/22的地址块,将该地址块分配给3个子网,其中子网1要求支持多达240个接口,子网2及子网3每个要求支持多达118个接口,提供满足这些限制的网络形式(形式a.b.c.d/x)
原地址块写作 158.18.1000 10(00.0)
子网1需要240个接口,由于2^8-2(去掉网络地址和广播地址)=254>240,则分配8位给子网1:158.18.132/24
子网2需要118个接口,由于2^7-2 (去掉网络地址和广播地址)=126>118,则匹配7位给子网2:158.18.133.0/25
子网3需要118个接口,由于2^7-2 (去掉网络地址和广播地址)=126>118,则匹配7位给子网3:158.18.133.128/25

IP分组转发算法

(1) 从数据报的首部提取目的主机的 IP 地址 D, 得出目的网络地址为 N。
(2) 若网络 N 与此路由器直接相连,则把数据报直接交付目的主机 D;否则是间接交付,执行(3)。
(3) 若路由表中有目的地址为 D 的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器;否则,执行(4)。
(4) 若路由表中有到达网络 N 的路由,则把数据报传送给路由表指明的下一跳路由器;否则,执行(5)。
(5) 若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器;否则,执行(6)。
(6) 报告转发分组出错。

DHCP+NAT协议解决学生上网问题

以我校校园网为例(一个教育网ip为A,三个外网IP为B、C、D)
首先明确校园网的默认网关为A。

  1. 该名同学要连接校园网,首先发送一个DHCP DISCOVER请求,源ip为全0,目的ip全1,然后学校的DHCP服务器收到后发送广播包,提供给该主机分配的ip(内网ip),子网掩码,默认网关,本地DNS服务器的地址,可使用时间等信息。该同学可能收到多个DHCP OFFER回应,可以从这写OFFER中选择一个,向选中的服务器提供DHCP请求报文,该选中的DHCP服务器发送ACK对请求报文进行响应,证实参数。
  2. 当请求三个外网ip时,到达默认网关后,该路由器将A代替源ip(内网ip),分配一个未使用的源端口号代替原源端口号。并将这条记录放到NAT转换表中;当外界发送响应信息到该路由器后,提取出目的ip和目的端口号,通过查看NAT表,找到该目的ip和目的端口号对应的内网ip和端口,然后用内网的ip和端口代替原目的ip和原目的端口,然后发至目的主机。实现通信过程。

LS算法、DV算法求路由表(LS算法必须由拓扑生成、洪泛控制的过程,DV算法中B节点必须要有邻接节点的距离向量表)

LS算法
拓扑生成过程:
(1) 发现邻居结点,并学习它们的网络地址;(发送HELLO包发现邻居节点)
(2) 测量到每个邻居结点的延迟或开销;(一种直接的方法是:发送一个要对方立即响应的ECHO包,来回时间除以2即为延迟。)
(3) 每个节点都向网络中其他所有节点广播链路状态分组,链路状态分组包含它所连接的链路的特征和费用,这样每个节点就拥有了网络中所有其他节点的链路状态信息
洪泛控制过程:在扩散信息的过程中,进行洪泛控制主要有两种方法
1.使用一个ttl字段来限制转发一个洪泛请求通过的跳数,在每次转发之前ttl字段-1直到减为0,则停止。
2. 使用了一种序号控制,分组序号以此加一,在每个路由器中记录一个最大序号,若到来的分组比最大序号小,说明已转发过该分组,丢弃;若比最大序号大,则转发,并修改最大序号的值。
LS表略
表头含义为
N(已经确认最短路的节点) D(距离)P(上一个节点)

DV算法
主要是填表略

如何保证路由表正确
  1. 最大度量值:路由器设置⼀个最大度量值,当达到该值时,路由器就会认为这条路由已经失效,将他清除出路由表;
  2. 水平分割:从⼀个方向上学来的路由信息,不能再放⼊发回那个方向的路由更新包并且又发回那个方向;
  3. 路由中毒:网络出现故障时,通知邻居该网段不可用;
  4. 毒性反转:当⼀条路径信息变为无效之后, 路由器并不立即将它从路由表中删除,而是用不可达的度量值将它⼴播出去,它可以立即清除相邻路由器之间的任何环路。
  5. 保持时间:该网段的路由变成“down”状态时,还要在路由器中保留⼀段时间;
  6. 触发更新:当路由器发现某个网段出现故障时,立即发送路由更新包来通知邻居,而不用等到下⼀次发送路由更新包的时间。

网络中采用层次选路的原因,AS是如何划分的,BGP/OSPF/RIP协议的特点及异同

原因:首先是规模,随着路由器数目变得很大,涉及路由选择算法的计算,存储,及通信的开销将高得不可实现;其次是管理自治,某些组织希望按照自己的意愿运行路由器或者对外部隐藏起网络的内部组织面貌,一个组织应当能够按照自己的愿望运行和管理网络,并且还能够和外部网络连接。
AS是根据相同的管理与技术控制进行的划分 同一个AS具有相同的路由选择协议。
OSPF是一个使用洪泛链路状态信息的链路状态协议,基于dijkstra算法
RIP是一种距离向量协议,采用DV算法,为信息在自治系统内的转发提供路由选择表,但是其健壮性不好。
上面两种均为AS内的路由选择协议,BGP为AS间的路由选择协议
BGP协议规定从相邻AS处获得子网的可达性信息,向AS内部所有的路由器传播这些可达性信息。

路由器选择算法

  1. 路由器被指定一个本地偏好值作为其属性之一,它完全取决于网络管理员,具有最高本地偏好的路由将被选择。
  2. 从余下的路由中(所有的都具有相同的最高本地偏好值),将选择具有最短AS-PATH的路由。
  3. 从余下的路由中(所有都具有相同的最高本地偏好值和相同的AS-PATH长度),使用热土豆选择具有最靠近NEXT-HOP的路由器路由。
  4. 如果仍然剩下路由,则该路由器通过BGP标识符选择路由。

第六章 链路层和局域网

多路访问链路和协议

  1. 信道划分MAC协议(TDMA和FDMA和CDMA:时分频分码分多址)
  2. 随机接入协议
    2.1 时隙ALOHA(节点获得新帧,则在下⼀个时隙进行传输;无冲突,节点能够在下⼀个时隙发送帧;有冲突,节点在每个后继时隙以概率P发送帧直到成功)
    2.2 纯ALOHA(帧到达节点,立即传输)
    2.3 1-坚持型CSMA(站点有数据发送,就开始监听信道;信道空闲,就发送;信道忙,继续监听直到信道空闲;产⽣冲突,等⼀随机时间开始发送)
    2.4非坚持型CSMA(站点接收到帧,监听信道;若信道空闲,就发送帧;若信道忙,就随机等待⼀段时间,再开始发送过程;若产⽣冲突,就随机等待⼀段时间,再开始发送过程)
    2.5 p-坚持型CSMA(站点接收到数据,先监听信道;若信道空闲,则以概率p发送数据,以概率1-p延迟到下⼀时隙发送;若下⼀时隙仍空闲,重复此过程,直到数据被发送出去或者信道被占用;若信道忙,重新开始发送过程;若有冲突,重新开始发送过程)
    2.6 CSMA/CD
  3. 轮流协议
    3.1 轮询(主节点轮流邀请从属节点发送数据;)
    3.2 令牌传递(控制令牌依次从⼀个节点,拿到令牌才能发送数据。)
  4. 有限争用协议(将站进行分组,每个竞争时间片只允许某个站的节点进行竞争)

以太网中CSMA/CD协议的工作过程和冲突后的指数回退算法

工作过程

  1. 适配器从网络层得到一个数据报,准备一个以太网帧,并把它放到适配器缓存中。
  2. 如果适配器检测到信道空闲,它开始传输该帧,如果适配器检测到信道忙则一直等到信道空闲,然后发送帧。
  3. 适配器发送完整个帧,而没有检测到其他结点数据发送,则适配器确认帧发送成功。
  4. 如果适配器检测到其他结点传输数据,则中止发送,并发送拥堵信号。
  5. 中止发送后,适配器进入二进制指数回避:
    第m次连续冲突后,取n=Min(m,10),适配器从{0,1,2,…,2^n-1}中随机选择一个K,然后适配器等待K*512比特的传输延迟时间,再返回第2步。
    连续冲突次数越多,平均等待时间就越长。

帧检验

网站参考
简单讲就是,题目会给一个生成多项式(可以表示一个二进制数G的形式)。
若为发送方,则进行编码,设需要进行编码的数字为M。

  1. 计算r = |G|-1(|G|表示G的位数),
  2. 计算R = (M*2^r)%G (R为需要进行编码的数据M左移r位除以G(除的时候是按位异或)的余数)
  3. MR = M*2^r + R (M左移r位,低r位用R进行补齐),该数即为校验码。

若为接受方则需要进行校验,给定MR。

  1. 计算MR除以G(除的时候是按位异或)的余数,若为0,则没有出现差错;若不为0,则出现差错。

交换表生成算法(自学习算法)

  1. 交换机表初始为空
  2. 对于每个接口收到的每个入帧,该交换机在其表中存储:(1)在该帧源地址字段中的mac地址(2)该帧到达的接口(3)当前时间。
  3. 如果在一段时间(老化期后)交换机没有接收到以该地址作为源地址的帧,就在表中删除该条记录。

在转发过程中的不同情况
如果目的mac没有在交换机表中,则交换机将广播该帧。
如果目的mac与发送接口联系起来,则交换机丢弃该帧。
如果目的mac在交换表中没有与发送接口联系起来,则交换机将该帧放到目的接口进行转发。

一个网段向另一个网段发送数据的过程

  1. 判断是否在同一子网:分别与子网掩码相与并比较是否一样——否,不在同一子网,封装arp广播包(目的mac为全F)获取网关1mac
  2. 网关1收到arp广播包返回自己的mac,主机将数据源ip和mac设为自己的,目的ip设为目的的,目的mac为网关1)封装发送数据帧到链路。
  3. 网关1收到,解析获得目的ip不是自己,查看路由表,路由表中有关于目标网段的下一跳,然后把源和目MAC地址重写 从相应的接口发出去,数据包沿途经过的路由器或网关设备都执行相同的动作,
  4. 到达目标网段后,网关设备查看arp表,找目标IP的MAC地址(数据帧传输过程中源目IP不变,MAC地址在变化) 然后封装成帧进行发送(注意每次判断是否在同一网段都需要将子网掩码分别与自己的IP和目的IP与运算判别)

请求google

相对比较全的
  1. DHCP获取用户主机ip地址等。用户主机先生成一个DHCP发现报文,该报文放入到目的端口为67,源端口为68的UDP报文段,该udp报文被放置在目的ip为全1,源ip为全0的ip数据报中,然后被封装成一个目的mac为全1的广播帧,由于交换机刚给电,交换表中增添一项该主机mac、接口、当前时间的记录,路由器在它的接口中接收到该广播帧,DHCP服务器会产生一个包含ip地址,dns服务器ip,子网掩码,默认网关的DHCP的提供报文,由于可能存在多个DHCP服务器,用户主机挑选一个进行回应,发送DHCP请求报文,服务器用DHCP ack报文对DHCP请求报文进行响应。用户主机其提供的ip地址,dns服务器ip地址记录下来,同时将默认网关的地址安装在ip转发表中。
  2. 通过DNS查询www.google.com的ip地址。用户主机先用子网掩码和dns服务器的ip地址与一下判断是否处于同一子网,由图可知并不处于同一个子网。然后用户主机获取网关mac地址,生成一个目的ip为网关,目的mac为全1的arp查询报文,网关路由器收到该帧,回复含有自身mac的arp应答报文。用户主机生成一个dns查询报文,目的ip为dns服务器地址,目的mac为网关mac。网关路由器通过查询其路由表(路由表按照 1. 按照本地偏好2. 最短as-path(as间路由选择协议) 3. 热土豆路由(路径长度用as内路由选择协议进行确定) 4. 附加策略,依次进行配置),按照最大匹配的原则将该报文发送至相应的接口,每到一个接口都需要判断是否在同一个子网。最终dns服务器收到该报文(如果之前有dns的题,直接说按照**题的方式进行查找),先在本地查看是否有www.google.com的缓存记录,若有则回应用户主机一个包含用户主机名到ip的地址映射的dns回答报文,用户主机提取出该ip地址;若没有则查看是否缓存了该网址权威域名服务器ip,若有则向权威域名服务器查询该网址ip,若没有则查看是否缓存了com 顶级域名服务器,若有则向该TLD查询权威服务器,若没有则向根域名服务器查询TLD com,进行后续操作。
  3. 用户主机生成一个tcp套接字,进行tcp连接,生成一个具有目的端口为80的TCP SYN报文段,将报文段放在具有目的ip(谷歌)的ip数据报中发送至网关,网关利用路由器转发表将该数据报发送到www.google.com,google服务器对和用户主机之间的tcp连接产生一个套接字,产生个tcp syn ack报文段,用户主机生成一个包含获取url的http get报文,将该报文写入到套接字中,生成一个报文段,将其发送到google的服务上,google服务器从tcp套接字中读取该get报文,生成一个含有web页的响应报文,将该报文发送到tcp套接字中,发送至用户主机,用户主机从http响应体中抽取web页面的html显示网页。
相对比较精简的
  1. DHCP获取用户主机ip地址等。用户主机先生成一个DHCP请求报文,对目的ip为全1,对该报文进行广播,DHCP服务器发现该报文,回应一个含有ip地址,dns服务器ip,子网掩码,默认网关的DHCP的ack 报文。用户主机其提供的ip地址,dns服务器ip地址记录下来,同时将默认网关的地址安装在ip转发表中。

  2. 通过DNS查询www.google.com的ip地址。用户主机先用子网掩码和dns服务器的ip地址与一下判断是否处于同一子网,由图可知并不处于同一个子网。然后用户主机获取网关mac地址,生成一个目的ip为网关,目的mac为全1的arp查询报文,网关路由器收到该帧,回复含有自身mac的arp回复报文。用户主机生成一个dns查询报文,目的ip为dns服务器地址,目的mac为网关mac。网关路由器通过查询其路由表,按照最大匹配的原则将该报文发送至相应的接口,每到一个接口都需要判断是否在同一个子网。最终dns服务器收到该报文,查看www.google.com的缓存记录,回应用户主机一个包含用户主机名到ip的地址映射的dns回答报文,用户主机提取出该ip地址,进行后续操作。

  3. 用户主机生成一个tcp套接字,进行tcp连接,生成一个具有目的端口为80的TCP SYN报文段,将报文段放在具有目的ip(谷歌)的ip数据报发送到www.google.com,google服务器产生个tcp syn ack报文段,发送至用户主机,用户主机生成一个包含获取url的http get报文,将其发送到google的服务上,google服务器读取该get报文,生成一个含有web页的响应报文,发送至用户主机,用户主机从http响应体中抽取web页面的html显示网页。

课本精简

一、准备:DHCP、UDP、IP和以太网
1.通过 DHCP 获取主机IP地址,bob 笔记本电脑的操作系统生成⼀个 DHCP 请求报文:(广播IP数据包和以太网帧)。
2.DHCP ACK,DHCP 服务器会产生⼀个包含 ip 地址,dns 服务器 ip,子网掩码,默认网关 ip 的 DHCP ACK 报文 。bob 收到该报文后,将自己的 ip 地址,dns 服务器 ip 记录下来,同时将默认网关的地址安装在 ip 转发表中
二:仍在准备:DNS和ARP
通过 DNS 查询谷歌的 IP 地址,将含有 DNS 查询报文的数据报放⼊以太网帧中。
1.为了获取网关路由器MAC地址,将生成⼀个目的ip为(默认网关)的 ARP查询报文(广播帧),查询网关的mac地址。
2.随后可以将包含 dns 查询报文的帧发送到网关路由器,路由器根据协议(如RIP,OSPF,RGP)确定转发表,并利⽤转发表将其送到 dns 服务器上。dns 服务器则形成⼀个包含主机名到 ip 地址映射的 dns 回答报文,bob 从 dns 回答报文中提取谷歌的 ip 地址。

三:Web客户—服务器交互:TCP和HTTP
1.bob 生成 tcp 套接字,随后开始进行 tcp 连接,目的端口 80。
2.TCP的三次握手。
3.bob 主机上的浏览器生成包含要获取的 URL 的 http get 报文, www.google.com 从 tcp 套接字中读取 http get 报文,生成⼀个包含请求的 web 页内容的响应报文,bob 主机上的web浏览器程序从套接字中读取 http响应文,从http 响应体中抽取 web 页面的 html,后显示网页。

假如你能上网,但你的室友不能上网,进行排查

来源:chrome浏览器

  1. 请检查您的互联网连接是否正常
    请检查所有网线是否都已连好,然后重新启动您可能正在使用的任何路由器、调制解调器或其他网络设备。
  2. 请检查您的DNS设置是否正确
    如果您不确定这是什么意思,请与您的网络管理员联系。
    请尝试停用网络联想查询功能
    前往 Chrome 菜单 >“设置”>“显示高级设置…”部分,然后取消选中“使用联想查询服务更快速地加载网页”。如果这无法解决该问题,我们建议您重新选中此选项,以便改善性能。
  3. 在防火墙或防病毒设置部分设为允许 Chrome 访问网络。
    如果它已在可访问网络的程序列表中,请尝试将它从该列表中移除,然后重新添加到其中。
  4. 如果您使用代理服务器…
    请检查您的代理服务器设置或与网络管理员联系,以确保代理服务器正常运行。如果您认为自己不需要使用代理服务器,请执行以下操作: 依次转到 Chrome 菜单 >“设置”>“显示高级设置…”>“更改代理服务器设置…”>“LAN 设置”,然后取消选中“为 LAN 使用代理服务器”。

答案2
参考网址
楼主莫着急, bai 我们从 du3 部分确定问题:

  1. 你先 zhi 检查自己的 daoip 地址,在运行里输入 zhuanipconfig ,然后 ping 自己的 ip 地址 shu ,如果 ping 的
    通,说明自己的机器没有问题。
  2. ping 你师友的机器,如果 ping 的通,说明从你的机器到交换机这一块都没有问题了,
  3. 那就只剩下交换机到互联网这块了哦, ping 一个网址,看看有反映没?还是你的防火墙级别设置太高还
    是 ie 有问题?或者你的计算机管理 - 〉服务 - 〉 message 是禁用的?

1 和 2 都没有问题就说明不是硬件的事情,不兼容的事情几乎没有听说。那就剩下软件的问题了。 ping 的通
网址的话那就可能是你的 ie 有问题,重装 ie 即可。

一些名词与英语对应关系
TCP:Transmission Control Protocol 传输控制协议
IP:Internet Protrocol 网际协议
ISP:Internet Service Provider 因特网服务提供商
message 报文(应用层分组)
segment 报文段 (运输层分组)
datagram 数据报(网络层分组)
frame 帧(链路层分组)

  • 66
    点赞
  • 161
    收藏
    觉得还不错? 一键收藏
  • 51
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 51
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值