博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
网络通信原理 五层协议
阅读量:5280 次
发布时间:2019-06-14

本文共 2217 字,大约阅读时间需要 7 分钟。

 

 

  1. 定义

    任意两台计算机正常通信,需要通过一套统一的标准协议规范,这一系列协议就是‘互联网协议‘。

    互联网协议的功能:定义计算机如何接入internet,以及接入internet的计算机通信的标准。

  2. tcp/ip五层协议

    互联网协议分为好多种,下面通过tcp/ip五层协议为例举例说明。

    应用层(Application Layer)、传输层(Transport Layer)、网络层(Network Layer)、链接层(Link Layer)、实体层(Physical Layer)。

    a、物理层(Pyhsical Layer):

      通过光纤、电缆、网线、无线电波等物理方式把计算机接入网络。通过高低电压发送二进制信息。传输0和1信号。

 

    b、数据链路层(Link Layer)

      1. 定义

        数据链路层定义了电信号分组方式,保证传输的0和1信号有意义。

      2. 以太网协议(Ethernet)

          一组电信号为一‘帧’,包括两部分:报头(head)、数据(data)。

            报头:固定为【18字节】=发送者(源mac地址)【6字节】+ 接收者(目标mac地址)【6字节】+ 数据类型【6字节】

            数据:数据内容【46~1500字节】

      3. mac地址

          mac地址也就是报头中的原mac地址和目标mac地址。

          每一块网卡具有唯一mac地址,长:48位的2进制组成(正好6个字节),表示为12位16进制(前6厂商编号、后6流水线编号)。

          

      4. 广播:

          通过mac地址,同一局域网内的两台主机就可以通信了:

          一台计算机向网络中广播数据包,所有计算机都会收到数据包,每台计算机读取数据包中的报头中的目标mac地址,和自己的一样就接受这个数据包,做进一步处理,否则,丢弃这个数据包。

          ps:一块网卡通过ARP协议获取另外一块网卡的mac地址。

 

    c、网络层(Network Layer)

      使用以太网协议,单单应用mac地址在局域网内广播方式传输数据不是办法,于是乎‘网络层’诞生了。

      引入一套新的地址用来区分不同的广播域(子网),这套地址即网络地址。

      规定网络地址的协议,叫做IP协议,其定义的地址,叫做IP地址。

      1. IP协议:

        目前流行的是IP协议是IPv4,32个二进制位组成(4个字节)。

        IP协议的作用1是为每一台计算机分配IP地址,2是确定哪些IP地址是在同一个子网内。

        ps:确定IP地址是否在同一个子网,需要和子网掩码AND运算。

      2. IP地址:

        IP地址:网络部分可以是前24位(或者前16位),后8位(或者后16位)是主机部分。

        子网掩码:网络部分是前24位,主机部分是后8位,

             那么子网络掩码就是11111111.11111111.11111111.00000000,写成十进制就是255.255.255.0。

      3. IP数据包:

        IP数据包也分为:报头(head)和数据(data),总长最大65535字节。

          报头:固定为【20~60字节】= 版本、长度、IP地址

          数据:数据内容【65475~65515字节】

        ps:以太网数据包的数据(data)部分就是IP数据包。

      4. ARP协议:

        从IP地址得倒mac地址。

        。。。

    

    d、传输层(Transport Layer)

      传输层就是建立‘端口到端口’的通信,端口号就是使用网卡的程序的编号。

      ps:网络层是建立了‘主机到主机’的通信。

      端口号:

        端口号:[0~65535],[0~1023]被系统占用。

        ps:Unix把主机+端口,叫做‘套接字’。

      1. UDP协议

        UDP数据包也分为:报头(head)和数据(data),不超65535字节。

          报头:端口号8个字节

          数据:

        ps:IP数据包的数据(data)部分就是UDP数据包。

        UDP协议不可靠,发出数据,不管对方是否接收到。

      2. TCP协议

        TCP协议可靠,每个数据包都有确认机制。

        TCP数据包没有长度限制,但是为了保证网络效率,一般不超过IP数据包长度。

 

    E、应用层(Application Layer)

      规定应用程序数据格式

 

  总结:

    以太网数据包构成:

    以太网报头+[IP报头+ [TCP报头 + data]]

转载于:https://www.cnblogs.com/sunqim16/p/6544884.html

你可能感兴趣的文章
0320-学习进度条
查看>>
MetaWeblog API Test
查看>>
移动、尺寸改变
查看>>
c# 文件笔记
查看>>
类和结构
查看>>
心得25--JDK新特性9-泛型1-加深介绍
查看>>
安装NVIDIA驱动时禁用自带nouveau驱动
查看>>
HDU-1255 覆盖的面积 (扫描线)
查看>>
Java 中 静态方法与非静态方法的区别
查看>>
Jenkins+ProGet+Windows Batch搭建全自动的内部包(NuGet)打包和推送及管理平台
查看>>
线程池的概念
查看>>
Java 序列化
查看>>
Java 时间处理实例
查看>>
Java 多线程编程
查看>>
Java 数组实例
查看>>
mysql启动过程
查看>>
2017前端面试题总结
查看>>
SWIFT国际资金清算系统
查看>>
站立会议第四天
查看>>
利用AMPScript获取Uber用户数据的访问权限
查看>>