数据通信网络

一、数据通信网络基础

常见术语

术语说明
数据载荷最终要传递的信息
报文网络中交换与传输的数据单元
头部在数据载荷的前面添加的信息段
尾部在数据载荷的后面添加的信息段
封装对数据载荷添加头部和尾部,形成新的报文的过程
解封装去掉报文的头部和尾部,获取数据载荷的过程
网关提供协议转换、路由选择、数据交换等功能的网络设备
路由器为报文选择传递的路径的网络设备
终端设备数据通信系统的端设备,作为数据的发送者或接受者

网络设备-交换机

交换机:距离终端用户最近的设备,用于终端用户接入的网络、对数据帧进行交换等。

网络设备-路由器

路由器:网络层设备,可以在因特网中进行数据报文转发。路由器根据所收到的报文的目的地址选择一条合适的路径,将报文传送到下一个路由器或目的地,路径中最后的路由器负责将报文送交目的主机。

  • 实现同类型网络或异种网络之间的通信
  • 隔离广播域
  • 维护路由表、运行路由协议
  • 路径(路由信息)选择、IP报文转发
  • 广域网接入、网络地址转换
  • 连接通过交换机组建的二层网络

网络设备-防火墙

防火墙:网络安全设备,用于控制两个网络之间的安全通信。它通过监测、限制、更改跨越防火墙的数据流,尽可能地对外部屏蔽网络内部的信息、结构和运行状况,以此来实现对网络的安全保护。

  • 隔离不同安全级别的网络
  • 实现不同安全级别的网络之间的访问控制(安全策略)
  • 用户身份认证
  • 实现远程接入功能
  • 实现数据加密及虚拟专用网业务
  • 执行网络地址转换
  • 其他安全功能

局域网(Local Area Network)

城域网(Metropolitan Area Network)

广域网(Wide Area Network):典型的广域网有:Internet(因特网)。

网络拓扑:是指用传输介质(例如双绞线、光纤等)互联各种设备(例如计算机终端、路由器、交换机等)所呈现的结构化布局。按照网络的拓扑形态来划分,网络可分为星型网络、总线型网络、环形网络、树形网络、全网状网络和部分网状网络。

二、网络参考模型

OSI参考模型

7.应用层为应用程序提供接口。
6.表示层进行数据格式的转换,以确保一个系统生成的应用层数据能够被另外一个系统的应用层所识别和理解。
5.会话层在通信双方之间建立、管理和终止会话。
4.传输层建立、维护、和取消一次端到端的数据传输过程。控制传输节奏的快慢,调整数据的排序等等。
3.网络层定义逻辑地址;实现数据从源到目的地的转发
2.数据链路层将分组数据封装成帧;在数据链路上实现数据的点到点、或点到多点方式的直接通信;差错检测。
1.物理层在媒介上传输比特流;提供机械的和电气的规约。

TCP/IP参考模型(主流参考模型)

应用层  ——>  应用层

主机到主机层  ——>  传输层

英特网层  ——>  网络层

                                ——>  数据链路层

网络接入层  ——>

                                ——>  物理层

TCP/IP常见协议

1.应用层:应用层为应用软件提供接口,使应用程序能够使用网络服务。应用层协议会指定使用相应的传输层协议,以及传输层所使用的端口等。应用层的PDU(协议数据单元)(报文)被称为Data

               Telent  23(TCP)远程登陆协议,提供远程管理服务

               HTTP  80(TCP)超文本传输协议,提供浏览网页务

               FTP(File Transfer Protocol)  20、21(TCP)文件传输协议、提供互联网文件资源共享服务.   采用C/S结构

               SMTP  25(TCP)简单 邮件传输协议、提供互联网电子邮件服务

               TFTP    69(UDP)简单邮件传输协议,提供简单的文件传输服务

               SNMP / DNS / DHCP

2.传输层:接收来自应用层协议的数据,封装上相应的传输层头部,帮助其建立“端到端”(port to port)的连接。传输层的PDU被称为Segment(段

TCP:一种面向连接的可靠的传输层通信协议,由IETF的RFC793定义。

UDP:一种简单的无连接的传输层协议,由IETF的RFC768定义。

TCP和UDP-端口号:

  • 客户端使用的源端口一般随机分配,目标端口则由服务器的应用指定;
  • 源端口号一般为系统中未使用的,且大于1023;
  • 目的端口号为服务端开启的应用(服务)所侦听的端口,如HTTP缺省使用80

TCP连接建立的详细过程如下:(三次握手)

  • TCP连接发起方,发送第一个SYN位置1TCP报文。初始序列号(Seq)a为一个随机生成的数字,因为没收到过来自接收方的任何报文,所以确认序列号(Ack)0
  • 接收方接收到合法的SYN报文之后,回复一个SYNACK1TCP报文。初始序列号(Seq)b为一个随机生成的数字,同时因为此报文是回复给发起方的报文,所以确认序列号(Ack)为a+1
  • 发起方接收到接收方发送的SYNACK置位的TCP报文后,回复一个ACK置位的报文,此时序列号为a+1,确认序列号(Ack)为b+1接收方收到之后,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双向连接断开。

3.网络层:传输层负责建立主机之间的进程与进程之间的连接,而网络层负责数据从一台主机到另外一台主机之间的传递。网络层的PDU被称为Packet(包)。

网络层作用:为网络中的设备提供逻辑地址,负责数据包的寻径和转发。

常见协议:IPv4/IPv6/ICMP/IGMP/等。

4.数据链路层:位于网络层和物理层之间,可以向网络层的IP、IPv6等协议提供服务。数据链路层的PDU被称为Frame(帧)。常见协议 PPPoE/Ethernet(以太网)/PPP

  • MAC地址在网络中唯一标识一个网卡,每个网卡都需要且会有唯一的一个MAC地址。
  • MAC用于在一个IP网段内,寻址找到具体的物理设备。
  • 工作在数据链路层的设备。例如以太网交换机,会维护一张MAC地址表,用于指导数据帧转发。
  • MAC地址由48比特(6个字节)长,12位的16进制数字组成。例如:48-A4-72-1C-8F-4F

地址解析协议(ARP  Address Resolution Protocol):是根据IP地址获取数据链路层地址的一个TCP/IP协议。根据已知的IP地址解析获得其对应的MAC地址。

ARP是IPv4中必不可少的一种协议,它的主要功能是:

  • 将IP地址解析为MAC地址。
  • 维护IP地址与MAC地址的映射关系的缓存,即ARP表项。
  • 实现网段内重复IP地址的检测。

网络设备一般都有一个ARP缓存(ARP Cache)。ARP缓存用来存放IP地址和MAC地址的关联信息。在发送数据前,设备会先查找ARP缓存表。如果缓存表中存在对方设备的ARP表项,则直接采用该表项中的MAC地址来封装帧,然后将帧发送出去。如果缓存表中不存在相应信息,则通过发送ARP Request报文来获得它。

        主机1通过发送ARP Request报文来获取主机2MAC地址。由于不知道目的MAC地址,因此ARP Request报文内的目的端MAC地址为0。

        ARP Request是广播数据帧,因此交换机收到后,会对该帧执行泛洪操作。

        所有的主机接收到该ARP Request报文后,都会检查它的目的端IP地址字段与自身的IP地址是否匹配。

        主机2发现IP地址匹配,则会将ARP报文中的发送端MAC地址和发送端IP地址信息记录到自己的ARP缓存表中。主机2通过发送ARP Reply报文来响应主机1的请求。此时主机2已知主机1MAC地址,因此ARP Reply是单播数据帧。交换机收到该单播数据帧后,会对该帧执行转发操作。主机1收到ARP Reply以后,会检查ARP报文中目的端IP地址字段是否与自己的IP地址匹配。如果匹配,会将ARP报文中的发送端MAC地址和发送端IP地址信息记录到自己的ARP缓存表中

封装好的完整数据,将会在网络中被传递。一般情况下:

        网络中的二层设备(如以太网交换机)只会解封装数据的二层头部(数据链路层、物理层),根据二层头部的信息进行相应的“交换”操作。
        网络中的三层设备(如路由器)只会解封装到三层头部(网络层、数据链路层、物理层),并且根据三层头部的信息进行相应的“路由”操作。
经过中间网络传递之后,数据最终到达目的服务器。根据不同的协议头部的信息,数据将被一层层的解封装并做相应的处理和传递,最终交由 WEB 服务器上的应用程序进行处理。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值