网络通信技术基础知识总结

 常用术语

  •  数据载荷:可以理解为最终想要传递的信息,但实际上,在具有层次化结构的通信过程中,上一层协议传递给下一层协议的数据单元(报文)都可以称之为下一层协议的数据载荷。
  • 报文:网络中交换与传输的数据单元,具有一定的内在格式,通常都具有头部+数据载荷+ 尾部的基本结构。传输过程中,报文的格式和内容可能发生改变。
  • 头部:为了更好的传递信息,在组装报文时,在数据载荷的前面添加的信息段统称为报文的头部。
  • 尾部:为了更好的传递信息,在组装报文时,在数据载荷的后面添加的信息段统称为报文的尾部。注意,很多报文是没有尾部的。
  • 封装:分层协议所采用的一种技术,底层协议收到来自上层协议的消息时,将该消息附加到底层帧的数据部分。
  • 解封装:是封装的逆过程,也就是去掉报文的头部和尾部,获取数据载荷的过程。
  •  网关:是在采用不同体系结构或协议的网络之间进行互通时,用于提供协议转换、路由选择、数据交换等功能的网络设备。网关是一种根据其部署位置和功能而命名的术语,而不是一种特定的设备类型。
  • 路由器:为报文选择传递路径的网络设备。
  • 终端设备:数据通信系统的端设备,作为数据的发送者或接收者,提供用户接入协议操作所需必要功能,可以是计算机、服务器、VoIP、手机等。 

防火墙:▫   是位于两个信任程度不同的网络之间(如企业内部网络和Internet之间)的设备,它 对两个网络之间的通信进行控制,通过强制实施统一的安全策略,防止对重要信息资 源的非法存取和访问,以达到保护系统安全的目的。

  • 局域网 (Local  Area  Network) 在某一地理区域内由计算机、服务器以及各种网络设备组成的网络。局域网的覆盖范围一般是方圆几千米以内。典型的局域网有:一家公司的办公网络,一个网吧的网络,一个家庭网络等。
  • 城域网 (Metropolitan Area Network)在一个城市范围内所建立的计算机通信网络。典型的城域网有:宽带城域网、教育城域网、市级或省级电子政务专网等。
     
  • 和广域网 (Wide Area Network)。通常覆盖很大的地理范围,从几十公里到几千公里。它能连接多个城市甚至国家,并能提供远距离通信,形成国际性的大型网络。典型的广域网有:Internet(因特网)。
  • 网络工程,就是围绕着网络进行的一系列的活动,包括:网络规划、设计、实施、调试、排错等。
  •  网络工程设计的知识领域很宽广,其中路由和交换是计算机网络的基本。
  • 物理层的PDU被称为比特流(Bitstream)
  • 物理层的PDU被称为数据帧
  • 通用路由平台VRP(Versatile Routing Platform)是华为公司数据通信产品的通用操作系统平台。它以IP业务为核心,采用组件化的体系结构,在实现丰富功能特性的同时,还提供了基于应用的可裁剪和可扩展的功能,使得路由器和交换机的运行效率大大增加。熟悉VRP操作系统并且熟练掌握VRP配置是高效管理华为网络设备的必备基础。
    •    本课程主要介绍VRP的基本概念、常用命令和CLI界面的使用

网络拓扑形态

按照网络的拓扑形态来划分,网络可分为星型网络、总线型网络、环形网络、树形网络、全网状网络和部分网状网络。

•    星型网络:
▫    所有节点通过一个中心节点连接在一起。
▫    优点:容易在网络中增加新的节点。通信数据必须经过中心节点中转,易于实现网络监控。
▫    缺点:中心节点的故障会影响到整个网络的通信。
•    总线型网络:
▫    所有节点通过一条总线(如同轴电缆)连接在一起。
▫    优点:安装简便,节省线缆。某一节点的故障一般不会影响到整个网络的通信。
▫    缺点:总线故障会影响到整个网络的通信。某一节点发出的信息可以被所有其他节点收到,安全性低。
•    环型网络:
▫    所有节点连成一个封闭的环形。
▫    优点:节省线缆。
▫    缺点:增加新的节点比较麻烦,必须先中断原来的环,才能插入新节点以形成新环。
•    树型网络:
▫    树型结构实际上是一种层次化的星型结构。
▫    优点:能够快速将多个星型网络连接在一起,易于扩充网络规模。
▫    缺点:层级越高的节点故障导致的网络问题越严重。

•    全网状网络:
▫    所有节点都通过线缆两两互联。
▫    优点:具有高可靠性和高通信效率。
▫    缺点:每个节点都需要大量的物理端口,同时还需要大量的互连线缆。成本高,不易扩展。
•    部分网状网络:
▫    只是重点节点之间才两两互连。
▫    优点:成本低于全网状网络。
▫    缺点:可靠性比全网状网络有所降低。
•    在实际组网中,通常都会根据成本、通信效率、可靠性等具体需求而采用多种拓扑形态相结合的方法。

TCP/IP参考模型

因为OSI协议栈比较复杂,且TCP和IP两大协议在业界被广泛使用,所以TCP/IP参考模型成为了互联网的主流参考模型。

•    TCP/IP模型在结构上与OSI模型类似,采用分层架构,同时层与层之间联系紧密。
•    TCP/IP标准参考模型将OSI中的数据链路层和物理层合并为网络接入层,这种划分方式其实是有悖于现实协议制定情况的,故融合了TCP/IP标准模型和OSI模型的TCP/IP对等模型被提出,后面的讲解也都将基于这种模型。

TCP/IP协议栈定义了一系列的标准协议。

•    应用层
▫    HTTP(Hypertext Transfer Protocol,超文本传输协议):用来访问在网页服务器上的各种页面。
▫    FTP(File Transfer Protocol,文件传输协议):为文件传输提供了途径,它允许数据从一台主机传送到另一台主机上。
▫    DNS(Domain Name Service,域名称解析服务):用于实现从主机域名到IP地址之间的转换。
•    传输层
▫    TCP (Transmission Control Protocol,传输控制协议) :为应用程序提供可靠的面向连接的通信服务。目前,许多流行的应用程序都使用TCP。
▫    UDP(User Datagram Protocol,用户数据报协议):提供了无连接通信,且不对传送数据包进行可靠性的保证。
•    网络层
▫    IP(Internet Protocol,互联网协议):将传输层的数据封装成数据包并完成源站点到目的站点的转发,提供无连接的、不可靠的服务。
▫    IGMP(Internet Group Management Protocol,因特网组管理协议):负责IP组播成员管理的协议。它用来在IP主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。
▫    ICMP(Internet Control Message Protocol,网际报文控制协议):基于IP协议在网络中发送控制消息,提供可能发生在通信环境中的各种问题反馈。通过这些信息,使管理者可以对所发生的问题作出诊断,然后采取适当的措施解决。

•    数据链路层
▫    PPP(Point-to-Point Protocol,点对点协议):一种点对点模式的数据链路层协议,多用于广域网。
▫    Ethernet( 以太网协议 ):一种多路访问广播型数据链路层协议,是当前应用最为广泛的局域网技术。
▫    PPPoE(Point-to-Point Protocol over Ethernet,以太网承载PPP协议):PPPoE提供通过简单桥接访问设备(接入设备)把一个网络的多个主机连接到远程访问集中器的功能。常见的应用有家庭宽带拨号上网。

TCP和UDP – 报文格式

•    TCP报文头部:
▫    Source Port:源端口,标识哪个应用程序发送。长度为16比特。
▫    Destination Port:目的端口,标识哪个应用程序接收。长度为16比特。
▫    Sequence Number:序号字段。TCP链接中传输的数据流每个字节都编上一个序号。序号字段的值指的是本报文段所发送数据的第一个字节的序号。长度为32比特。
▫    Acknowledgment Number:确认序列号,是期望收到对方下一个报文段数据的第1个字节的序号,即上次已成功接收到的数据段的最后一个字节数据的序号加1。只有Ack标识为1,此字段有效。长度为32比特。
▫    Header Length:头部长度,指出TCP报文头部长度,以32比特(4字节)为计算单位。若无选项内容,则该字段为5,即头部为20字节。
▫    Reserved:保留,必须填0。长度为3比特。
▫    Control bits:控制位,包含FIN、ACK、SYN等标志位,代表不同状态下的TCP数据段。
▫    Window:窗口TCP的流量控制,这个值表明当前接收端可接受的最大的数据总数
(以字节为单位)。窗口最大为65535字节。长度为16比特。
▫    Checksum:校验字段,是一个强制性的字段,由发端计算和存储,并由收端进行验证。在计算检验和时,要包括TCP头部和TCP数据,同时在TCP报文段的前面加上12字节的伪头部。长度为16比特。

TCP的建立 - 三次握手

任何基于TCP的应用,在发送数据之前,都需要由TCP进行“三次握手”建立连接。

•    TCP连接建立的详细过程如下:
▫    由TCP连接发起方(图中PC1),发送第一个SYN位置1的TCP报文。初始序列号a为一个随机生成的数字,因为没收到过来自PC2的任何报文,所以确认序列号为0 ;
▫    接收方(图中PC2)接收到合法的SYN报文之后,回复一个SYN和ACK置1的TCP报文。初始序列号b为一个随机生成的数字,同时因为此报文是回复给PC1的报文,所以确认序列号为a+1;
▫    PC1接收到PC2发送的SYN和ACK置位的TCP报文后,回复一个ACK置位的报文,此时序列号为a+1,确认序列号为b+1。PC2收到之后,TCP双向连接建立。

TCP的序列号与确认序列号,保证传输可靠性。

TCP的窗口滑动机制,TCP通过滑动窗口机制来控制数据的传输速率

  1. 在TCP三次握手建立连接时,双方都会通过Window字段告诉对方本端最大能够接受的字节数(也就是缓冲区大小)。
  2. 连接建立成功之后,发送方会根据接受方宣告的Window大小发送相应字节数的数据。
  3. 接受方接受到数据之后会放在缓冲区内,等待上层应用来取走缓冲的数据。若数据被上层取走,则相应的缓冲空间将被释放。
  4. 接收方根据自身的缓存空间大小通告当前的可以接受的数据大小( Window )。
  5. 发送方根据接收方当前的Window大小发送相应数量的数据

TCP的关闭 - 四次挥手

当数据传输完成,TCP需要通过“四次挥手”机制断开TCP连接,释放系统资源。

•    TCP支持全双工模式传输数据,这意味着同一时刻两个方向都可以进行数据的传输。在传输数据之前,TCP通过三次握手建立的实际上是两个方向的连接,因此在传输完毕后,两个方向的连接必须都关闭。如图所示:

  1. 由PC1发出一个FIN字段置”1 ”的不带数据的TCP段;
  2. PC2收到PC1发来的FIN置位的TCP报文后,会回复一个ACK置位的TCP报文。
  3. 若PC2也没有需要发送的数据,则直接发送FIN置位的TCP报文。假设此时PC2还有数据要发送,那么当PC2发送完这些数据之后会发送一个FIN置位的TCP报文去关闭连接。
  4. PC1收到FIN置位的TCP报文,回复ACK报文,TCP双向连接断开。

地址解析协议 (ARP)

•    ARP (Address Resolution Protocol)地址解析协议: 根据已知的IP地址解析获得其对应的MAC地址。

•    ARP(Address Resolution Protocol,地址解析协议)是根据IP地址获取数据链路层地址的一个TCP/IP协议。
•    ARP是IPv4中必不可少的一种协议,它的主要功能是:
▫    将IP地址解析为MAC地址;
▫    维护IP地址与MAC地址的映射关系的缓存,即ARP表项;
▫    实现网段内重复IP地址的检测。

 ARP的工作原理

  • 网络设备一般都有一个ARP缓存(ARP Cache)。ARP缓存用来存放IP地址和MAC地址的关联信息。
  • 在发送数据前,设备会先查找ARP缓存表。如果缓存表中存在对方设备的ARP表项,则直接采用该表项中的MAC地址来封装帧,然后将帧发送出去。如果缓存表中不存在相应信息,则通过发送ARP Request报文来获得它。
  • 学习到的IP地址和MAC地址的映射关系会被放入ARP缓存表中存放一段时间。在有效期内(缺省:180s),设备可以直接从这个表中查找目的MAC地址来进行数据封装,而无需进行ARP查询。过了这段有效期,ARP表项会被自动删除。
  • 如果目标设备位于其他网络,则源设备会在ARP缓存表中查找网关的MAC地址。然后将数据发送给网关。最后网关再把数据转发给目的设备。

  • 主机1的ARP缓存表中不存在主机2的MAC地址,所以主机1会发送ARP Request来获取目的MAC地址。
  • ARP Request报文封装在以太帧里。帧头中的源MAC地址为发送端主机1的MAC地址。此时,由于主机1不知道主机2的MAC地址,所以目的MAC地址为广播地址FF-FF-FF-FF-FF-FF。
  • ARP Request报文中包含发送端MAC地址、发送端IP地址、目的端MAC地址、目的端IP地址,其中目的端MAC地址的值为0。ARP Request报文会在整个网络上传播,该网络中所有主机包括网关都会接收到此ARP Request报文。

所有的主机接收到该ARP Request报文后,都会检查它的目的端IP地址字段与自身的IP地址是否匹配。如果不匹配,则该主机将不会响应该ARP Request报文。如果匹配,则该主机会将ARP请求报文中的发送端MAC地址和发送端IP地址信息记录到自己的ARP缓存表中,然后通过ARP Reply报文进行响应。

•    主机2会向主机1回应ARP Reply报文。
•    ARP Reply报文中的发送端IP地址是主机2自己的IP地址,目的端IP地址是主机1的IP地址,目的端MAC地址是主机1的MAC地址,发送端MAC地址是自己的MAC地址,同时操作类型被设置为Reply。
•    ARP Reply报文通过单播传送。

主机1收到ARP Reply以后,会检查ARP报文中目的端IP地址字段与自身的IP地址是否匹配。如果匹配,ARP报文中的发送端MAC地址和发送端IP地址会被记录到主机1的ARP缓存表中。

数据传输过程

 发送方发出

 •    假设你正在通过网页浏览器访问华为官网,当你输入完网址,敲下回车后,计算机内部会发生下列事情:
▫    1. IE浏览器(应用程序)调用HTTP(应用层协议),完成应用层数据的封装(图中DATA还应包括HTTP头部,此处省略) 。
▫    2. HTTP依靠传输层的TCP进行数据的可靠性传输,将封装好的数据传递到TCP模块。
▫    3. TCP模块给应用层传递下来的Data添加上相应的TCP头部信息(源端口、目的端口等)。此时的PDU被称作Segment(段)。
▫    4. 在IPv4网络中,TCP模块会将封装好的Segment传递给网络层的IPv4模块(若在IPv6环境,会交给IPv6模块进行处理)。
▫    5. IPv4模块在收到TCP模块传递来的Segment之后,完成IPv4头部的封装,此时的PDU被称为Packet(包)。
▫    6. 由于使用了Ethernet作为数据链路层协议,故在IPv4模块完成封装之后,会将Packet交由数据链路层的Ethernet模块(例如以太网卡)处理。
▫    7. Ethernet模块在收到IPv4模块传递来的Packet之后,添加上相应的Ethernet头部信息和FCS帧尾,此时的PDU被称为Frame(帧)。
▫    8. 在Ethernet模块封装完毕之后,会将数据传递到物理层。
▫    9. 根据物理介质的不同,物理层负责将数字信号转换成电信号,光信号,电磁波(无线)信号等。
▫    10. 转换完成的信号在网络中开始传递。

数据在传输中

•    一般情况下:
▫    网络中的二层设备(如以太网交换机)只会解封装数据的二层头部,根据二层头部的信息进行相应的“交换”操作。
▫    网络中的三层设备(如路由器)只会解封装到三层头部,并且根据三层头部的信息进行相应的“路由”操作。
▫    注:“交换”和“路由”的详细细节和原则,将会在后面的课程中详细介绍。

数据接收

经过中间网络传递之后,数据最终到达目的服务器。根据不同的协议头部的信息,数据将被一层层的解封装并做相应的处理和传递,最终交由WEB服务器上的应用程序进行处理。

  • 15
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

❸杨开泰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值