网站建设维护是啥意思,东莞如何搭建网站建设,本地生活网免费发信息,搜索引擎链接文章目录概念1. 缓存2. 备份#xff08;副本#xff09;3. 硬件和软件#xff1a;4.端口5. 二进制协议vs文本协议6. 虚拟7.分布式8.广播域和冲突域的区别9本地地址协议1.CSMA/CD协议2.IP协议3.路由算法协议#xff08;RIP#xff0c;OSPF#xff0c;BGP#xff09;4.ARP…
文章目录概念1. 缓存2. 备份副本3. 硬件和软件4.端口5. 二进制协议vs文本协议6. 虚拟7.分布式8.广播域和冲突域的区别9本地地址协议1.CSMA/CD协议2.IP协议3.路由算法协议RIPOSPFBGP4.ARP协议ICMP协议5.DHCP协议6.NAT协议7. TCP协议8.UDP9. UDP vs TCP9.其他机制1. 三次握手2. 确认丢失和确认迟到3.网络层应该做可靠交付还是不可靠交付呢4. 检验和5.传统网络vs软件定义网络6. 工作在各个网络层次的硬件7.路由8.什么时候发送3个ACK呢9.虚拟专用网VPN和网络地址转换NAT的区别10.为什么数据链路层需要帧定界11.网络的异构性12.ip数据报分片重组在目的主机概念
1. 缓存
我觉得网络中很有意思的一个提高效率思路就是缓存为了提高效率可以把一些东西存在本地用的时候就可以直接使用。
例如
ARP高速缓存表
DNS本地服务器也有高速缓存
还有就是处理的时候可以将事务积攒一下一起处理
TCP的发送缓存和接受缓存
计算机CPU内的缓存2. 备份副本
(1)tcp对刚发出去的数据要备份直到收到确认。
(2)FTP若要存取一个文件就必须先获得一个本地文件副本。若要修改文件只能对文件副本进行修改然后再将修改后的文件副本传回到原节点。3. 硬件和软件
硬件快固定软件慢易更改编程。
路由器转发的信息有两类路由信息、数据。路由器转发采用硬件转发。
以太网交换机的每个端口都直接与一个单台主机或另外一个以太网网桥相连硬件上相连。
以太网交换机使用专用的交换机结构芯片用硬件转发收到的帧其转发速率比使用软件转发的网桥要快的多。4.端口
应用层的端口是软件层面的端口不是物理端口比如hub的接口是硬件的接口。分为服务器端口号和客户端端口号服务器端口号又分为熟知端口号和登记端口号。可以这么理解服务器端一般有固定的端口号客户端则使用临时的动态的端口号。
(2)常用的服务器端口号
①http:80
②ftp:21用于连接控制进程 20用于传送数据数据进程
③5. 二进制协议vs文本协议
TCP是二进制协议
HTTP和SMTP是文本协议
文本协议容易读取。
二进制协议效率高。
但是我不理解基于文本的协议最后不还是被封装在基于二进制的tcp协议里面么
这样说的话到最后那不就都是以二进制流的形式去传送么
但是下层对上层是透明的可能应用层的基于文本的协议到了传输层就被转化成基于二进制的协议。6. 虚拟
我对虚拟的理解虚拟就是逻辑上的和物理是一个相对的概念。我们常常听到建立虚拟连接的虚拟就这个虚拟。ip地址是逻辑地址也就是虚拟地址。 tcp连接是虚拟连接实际上并不存在这样一条链路是因为下层的协议对上层透明直接对上层提供服务所以tcp才感觉是两个对等端在直接通信。
再比如VLAN虚拟局域网局域网给用户提高一种服务。是将一个物理的LAN在逻辑上划分成多个广播域的通信技术。每个VLAN是一个广播域VLAN内的主机间可以直接通信而VLAN间则不能直接互通。这样广播报文就被限制在一个VLAN内。
7.分布式
所谓分布式就是指数据和程序可以不位于一个服务器上而是分散到多个服务器以网络上分散分布的地理信息数据及受其影响的数据库操作为研究对象的一种理论计算模型。
互联网采用自适应的、分布式的动态路由选择协议 这里可以将分布式理解为分层次的。互联网的规模非常大。如果让所有的路由器知道所有的网络应怎样到达则这种路由表将非常大处理起来也太花时间。也就是说每个路由器都只知道一部分路由表完整的路由表是由分布在各个地理位置的路由器里面的路由表拼凑起来的。
8.广播域和冲突域的区别
(1)广播域 (2)冲突域的每一个节点都能收到所有被发送的帧广播域指的是所有接收广播信息的节点。 (3)冲突域是物理层广播域是数据链路层。交换机可以分隔冲突域因为交换机可以限制不同的端口的广播范围让它们不相交这样冲突域就被分隔开。路由器可以分隔广播域因为路由器可以不转发广播包主机字段为全1的字段。
9本地地址
作用
(1)提高安全性。
相当于形成与外界的屏障外界无法得知内部的具体情况。
(2)节约ip地址资源
本地地址可以在不同的本地系统内被复用互不干扰。协议
1.CSMA/CD协议
2.IP协议
2.1 作用网络互联使得各种异构的网络在使用ip协议互联在一起之后形成逻辑上互联的网络使得来自不同网络的用户可以畅通地通信。2.2 特殊地ip地址ipv4有哪些呢分类的ip地址里面
(1)网络号全0的ip地址表示本网络
(2)网络号127 即01111111作为本地软件环回测试本主机进程之间的通信之用。环回地址指的是主机用于向自身发送通信的一个特殊地址不再通过数据链路层传递数据而是直接在自己的网络层运输层进行传递数据
(3)总结
①环回地址127开头的
②网络号主机号全0
③主机号全1广播地址2.3 ip首部里面的片偏移以8个字节为单位
总长度有16位单位是字节片偏移是13位单位是8个字节标志位3位。
这样片偏移的最大值就和总长度的最大值匹配起来啦。2.4ip数据报的分片和重组涉及
标识同一ip数据报。
标识属于同一数据报ip数据包重组时使用每个从上层传下来的数据报都会被赋予唯一一个标识号。
标志位片偏移重组的顺序3.路由算法协议RIPOSPFBGP
区别:1RIP距离向量
OSPF链路状态
BGP距离向量2RIP和BGP-4都带了向量二字两者区别是
RIP是路径AS内BGP-4是AS间。
RIP是最短路径BGP-4是可达的路径。
RIP给出的是next hop的路由器和去往目的地的距离。
BGP-4给出的是一个路径向量告诉我们去往下一个AS的完整路径这些路径上包括的AS。
3RIPvsOSPF
① RIP协议路由器通过nexthop参数给出明确的路径。OSPF路由器根据自己的数据库运行算法后得到nexthop数值。OSPF形成路由表所有的路由器根据其区域拓扑结构数据库副本采用最短路径法计算形成各自的路由表。
② RIP每隔30s更新OSFP每隔30min更新非触发更新
③ RIP使用UDPOSPF使用IP4BGPvsRIPvsOSPF不同点
①BGP只在最开始交换整个报文后来只交换更新的部分。在BGP 刚刚运行时BGP 的邻站是交换整个的 BGP 路由表。但以后只需要在发生变化时更新有变化的部分。这样做对节省网络带宽和减少路由器的处理开销都有好处。
②RIP只和相邻路由器交换信息每隔30s交换一次或者触发更新交换自己的全部信息。
③OSPF在链路状态发生变换时需要使用泛洪法通知所有其他路由器信息包括与该路由器相邻的路由器及其所有相邻链路的状态。其他 对一个路由协议我们应该了解路由表的表项及意义选择路由的算法更新路由的时刻更新路由表的方式。 例如rip协议表项目的网络、最短距离、next hop距离向量算法。定时30s更新或者触发更新。和邻居交互信息发送整个路由表对比更新表项。具体的更新规则a将自己的路由表发给bb将a的路由表next hop加一且next hop设置为a。b逐个去查看表项dst不在b里面将该表项直接加入bdst在next hop是a更新dst在next hop不是a比较若距离小则替换。 OSPF里面的链路状态指什么 (1)本路由器与哪些路由器相邻度量。这里的度量不同于RIP协议RIP协议只要相邻度量距离就是1但是OSPF显然更加复杂同为相邻但度量可能不同。 ip地址是根据拓扑结构mac地址则是网络厂商加序列号并没有拓扑信息。ip地址可以提高网络传输效率便于网络管理。 (3) MTU包括协议字段 (1)以太网64-1518 (2)网络层48-1500 ip数据报首部检验和 (1)这个字段用来检验数据报的首部不包括数据部分。数据报每经过一个路由器路由器都要重新计算首部检验和。不检验数据部分可以减小计算量。
4.ARP协议ICMP协议
ARP主机A广播ARP请求主机B回复那么主机A和主机B将拥有对方的ip-MAC映射。
为什么ICMP数据报封装在ip数据报里面1IP协议自身不存在获取差错信息并进行差错控制的机制因此在使用IP协议会出现在数据包发送后不知道数据包是否到达目的地是什么原因造成数据包不能到达目的地的。 2ICMP协议就是来处理数据报文传输过程中出现的错误具体的工作内容当目标主机或中间设备发现数据报文在传输中出现错误不能达到目的地址后会触发ICMP模块同时产生一个ICMP报文向源主机发送出错情况报告。源IP地址和目的IP地址封装在IP数据报里所以ICMP报文要封装在IP数据报中被传输才可向源主机发送出错误情况报告
5.DHCP协议
五种报文
DHCPDISCOVER
DHCPOFFER
DHCPREQUEST
DHCPACK
DHCPNAK
请求过程流程源地址目的地址主机请求0.0.0.0255.255.255.255服务器回复服务器地址255.255.255.255主机请求0.0.0.0255.255.255.255服务器回复服务器地址255.255.255.255
6.NAT协议
NAT协议有两个作用
替换源地址内网与外网通信出
替换目标地址外网与内网通信入这引发了我另外一个好奇ip数据报的里面为什么要放源地址因为ip是无连接的又不需要返回源地址那为什么还要放源地址呢 我个人的理解是这里可以关联到ICMP协议当ip数据包传输有问题的时候可以用ICMP数据包通知源站所以需要在ip数据报的首部放入源地址这个数据段因为有问题找源站
NAT专用网内部的一些主机本来以及分配到本地IP地址但现在又想和互联网上的主机通信(1)NAT路由器将源地址从内部地址转换为全球ip地址 (2)互联网上的路由器不能转换任何地址是专用地址的数据报 (3)NAT路由器将目的地址从全球ip地址转换为内部地址
7. TCP协议
1URG字段和PUSH字段
urg字段是告诉发送端紧急发送
push字段是告诉接收端赶紧交付数据交付给进程
这里有个先验知识就是发送缓存和接收缓存发送方和接收方分别维护着一个发送缓存和接收缓存。发送缓存里面的数据按照先来后到去发送接收方里面的数据会暂存到接收缓存然后到一定地步再交付给进程假设满了之后以提高效率。
urg字段可以打破先来后到的顺序去发送跨过缓存阶段传递给应用程序。push字段可以让接收方在接收缓存未满的时候就去交付。可以这么说urg主要是针对新来的数据push是针对在接收缓存里面的数据。我可以理解push但是不理解urg
因为我一直觉得首部是给接收端看的是为了提醒接收端就是发送端是先有了操作才有了首部接收端根据首部去操作。首部对于发送端是记录对于接收端是指令理论上是应用层把数据交付下来假设原本有1000bit数据正在发送第500个数据然后突然下来30bit紧急数据这个时候不能直接插入么.
为什么一定要在首部里面干这个事情因为我觉得首部就是用来封装数据是数据封装好后给对方看的发送端为什么还要靠解析数据来知道这个紧急数据在哪里。
我觉得可能是这样的前面排的比较靠前的数据已经放好了不能动那就只能在500之后插入数据。那就组装成一个报文发给接收端接收端收到之后先从序号500开始读取这个数据。直接交付给应用程序也不需要经过缓存。
这是我自己能自圆其说的最好的理解了2tcp为什么是点对点的因为tcp是面向连接的这个连接是逻辑上的连接通信前建立连接通信过程中占用全部资源通信后释放连接。
3 TCP重传的情形计时器超时3个连续的ACK。8.UDP
9. UDP vs TCP
1udp数据报的源端口号可以为0但是tcp不可以因为tcp是全双工通信。必须告知通信对方自己的端口号这样对方才可以将信息发送过来。
2tcp是面向字节流。udp是面向报文的udp对报文既不拆分也不合并直接完整地封装进数据部分。9.其他
数据报里面关于长度的一些字段(1) 扩展首部通常包含首部长度例如iptcp反例udp (2) ip既有4位首部长度又有16位总长度字段udp只有udp长度首部数据
机制
1. 三次握手
甲给乙乙回甲这时候甲已经做好准备了因为甲知道乙收到自己的请求并且确认了。甲再回复给乙乙就知道自己的回复被收到。甲的连接已经打开了那么乙就可以开始发送数据了。如果乙没有收到第三次握手的确认会怎样
超时重传。
超时重传时间设置太长或者太短会
太长不能及时的察觉那些出现差错的分组导致重传的时间间隔很大通信效率降低。太短一些正常的分组由于一些原因还在路上但由于超时计时器到时所以需要重传浪费网络资源的同时还可能加重拥塞为什么不是两次握手
因为两次握手的第二次如果没有发送到客户端那么客户端对服务器端的连接将一直关闭服务器无法通知客户端打开连接服务器一直向客户端发送数据包。会造成单方面的资源浪费还可能因为将过多的资源注入网络造成网络拥堵。2. 确认丢失和确认迟到
(1)确认丢失接收方已经收到了分组但确认在路上丢失发送方又重新发送了分组接收方将收到的分组丢弃继续给接收方发送确认
(2)确认迟到接收方收到确认但是超时计时器过期了对于重复的确认收下就丢弃什么也不做。我觉得这个时候发送方就可以继续发送数据了。3.网络层应该做可靠交付还是不可靠交付呢
(1)互联网的设计不可靠的数据报服务这样网络传输效率才能快网络互联才能简单网络规模才能大。4. 检验和
1ip数据报只检验ip首部但是udp、tcp检验和是把首部和数据部分一起检验了。我可以这样理解么ip数据报的数据部分封装的可能是udp或者tcp这俩都会传输层检验自己的内容所以ip只需要检验自己的首部就行。 2计算检验和的方式 udp、tcp:加上伪首部 ,将检验和设置为0对首部和数据部分进行反码求和再取反码将得到的结果填充到首部。收到数据报时加上伪首部进行反码求和结果为0通过检验否则不通过。 原理很简单x-(0x) ,x±x0 x是检验和。 反码求和和原码求和的不同之处在于将高位的进位加到最低位。 具体计算方式参考这篇博文 ip只检验首部 以太网mac帧CRC冗余检验
5.传统网络vs软件定义网络
传统网络每个路由器承担两项任务既做转发又做路由选择既要思考又要劳动。
SDN将控制层面和数据层面分离由远端的控制器做决策下发流表告诉路由器要做的动作路由器只需要按照命令执行即可。 感觉有点像CS架构的意思每个路由器就像一个客户端然后控制器就像一个服务器一样去响应来自客户端的请求。 那这样网络不又变成集中控制了么可以在某些特殊情况下小范围集中控制。
6. 工作在各个网络层次的硬件
(1)物理层转发器
(2)数据链路层网桥交换机
(3)网络层路由器
(4)传输层及以上网关7.路由
1路由聚合作用压缩转发表减少转发时间。
路由聚合把多个小的网络合并在路由表中相当于合并了多个表项。2路由表给出的是去往目的网络的路径而不是目的主机。
强调网络层是负责网络到网络的通信数据链路层是点到点就是节点计算机到节点计算机传输层是端到端就是进程到进程的通信。8.什么时候发送3个ACK呢
9.虚拟专用网VPN和网络地址转换NAT的区别
(1)VPN是两个专用网之间交换信息 (2)NAT是专用网想接入到互联网
10.为什么数据链路层需要帧定界
11.网络的异构性
物理层和数据链路层定义。包括传输介质、数据编码、链路控制协议以及不同的数据单元格式和转发机制。
12.ip数据报分片重组在目的主机
(1)不是在中间路由器。因为IP分片可以独立地通过各个路由并且在传输过程仍存在分片地可能性不同网络地MTU可能不同。 (2)不是在目的网络的路由器。因为到达目的网络之后由于数据链路层的MTU也有分片的可能。