数据通信基础
发布时间:2024年01月15日
一、OSI七层网络模型
物理层
比特流传输
- 不管通过什么样的介质,将信息的二进制能够传递到另外一个节点,这个过程就是物理层
- 物理层定义了一系列传输介质的电气标准,这个是弱电工程师关心的
- RJ45俗称水晶头
- T568B
- 线序标准,目前市场上绝大多数网线是这个标准
- T568A
- SFP
数据链路层
提供介质访问、链路管理等
封装成帧、差别检错、透明传输
- 将物理层传递过来的二进制信号内容进行翻译,翻译的结果被称为数据帧
- 以太网传递的最终形式是二进制,以太网卡都会内置处理芯片,用来处理最初的112个二进制
- 前48位是目的地MAC地址(媒体访问控制,相当于网卡的身份证号码)
- 之后的48位是发送者的MAC地址
- 之后的16位,表示数据包的类型
- 0x0800,ipv4数据报文
- 0x80dd,ipv6报文
- 打开cmd,输入ipconfig/all,可用查看window所有网卡的MAC地址
- MAC地址
- 物理层被认为是不可靠的,有可能接触不良,有可能是电测干扰,有可能闪电风暴
- 数据链路层通过CRC循环冗余校验生成验证码,放在数据包最后的FCS,用来保证数据正确,如果错误则丢弃
网络层
寻址和路由选择
- 路由,寻址功能
- 当计算机从网卡后获得后数据是ipv4之后,就以ipv4的格式去理解后续的内容
- 需要注意的关键内容如下
- protocol
- 源与目的ip地址
- mac地址比作为身份证号,那么ip地址就是当前你所处的位置,快递小哥通过你的位置找到你,通过你的身份证确认你
传输层
建立主机端到端连接
端对端连接
- 当计算机限制已经确定这个数据就是给我的之后,就需要判断这个数据是什么业务
- 需要注意的关键内容
- 源目的端口号
- 范围是1-66535
- 默认情况下,所有端口都是关闭的,当有程序需要网络通信的时候,就会选择一个端口号占用
- 正常情况下,电脑上大多数软件端口号是随机的,因为不需要被访问,只需要回复
- 有些服务是需要被访问的,所以这些访问需要占据固定的众所周知的端口号
- 在电脑上的C:\windows\system32\dreivers\etc\service文件中保存着windows主动访问其他主机时候默认使用的端口号
- http 80/tcp
- ftp 20/tcp 21/tcp
- mstsc 3389/tcp 3389/udp
- dns 54/tcp 53/udp
- telnet 23/tcp
- ssh 22/tcp
- 在cmd中输入netstat-ano可以查看ip地址、端口号、进程号对应的关系
应用层
提供应用程序间通信
二、IP地址
- IP地址是32位二进制,类似手机号码有归属地和号码字段,归属地字段一样,说明在同一个运营商同为一个范围
- 为了让人类能够记住,不眼花,使用点分十进制
- IP地址网络位
- IP地址网络位表示一样是同一个局域网的
- 局域网是多台设备组成,可以直接不受控制的访问
- 正常情况下,一家公司为了安全、财务、研发、it、业务等部门之间相互隔离或者受控
- IP地址主机位
- 在网络位相同的情况下(也就是一个局域网),主机位不能重复
- 主机位是为了帮助局域网内的设备相互之间进行更高层的通信封装使用
- 网络类型
- A:1.0.0.0~126.255.255.255/8
- 127开头的作为本地的测试地址
- A类地址的局域网可以存在2^24-2个主机
- B:128.0.0.0~191.255.255.255/16
- C:192.0.0.0~223.255.255.255/24
- D组播没有网络位概念
- E用不到
- 使用子网掩码来区分网络位和主机位,因为用类的方式使用ip地址空间太土豪
- 子网掩码可以让IP地址自由的划分网络位数,子网掩码也是32位二进制,所以可以和IP地址进行一一对应,规定子网掩码为1,那么所对应的IP地址就是属于网络位
私有IP地址
- 如果要取得互联网合法地址用于通信,必须要找iana.org组织分配
- 很多企业内部都有大量的网络设备,大多数时候这些设备只需要内部通信即可
- 企业的网络管理员可以从如下网段中自行分配地址
私有IP地址范围 | 地址范围 |
---|
10.0.0.0/8 | 10.0.0.0到10.255.255.255 |
172.16.0.0/12 | 172.16.0.0到172.31.255.255 |
192.168.0.0/16 | 192.168.0.0到192.168.255.255 |
- 私有IP地址空间中的地址不需要申请,随意使用,但是不能在互联网上与合法地址通信(因为对方没法回复你这个地址,因为世界上私有IP地址段无数个重复的,怎么指定回到谁那里呢)
- 而我们明明用的私有IP地址,也可以上网,因为我们需要先把自己的上网请求提交给网络中的网关(就是你家的路由器),再由网关代替我们去获取内容转交给我们的电脑手机,而网关往往能从运营商哪里得到一个合法的公有IP地址
子网掩码(NetMask)
- 网络掩码与IP地址搭配使用,用于描述一个IP地址中的网络部分及主机部分
- 子网掩码32bits,与32bits的IP一一对应,掩码中为1的位对应IP地址中的网络位,掩码中位0的位对应IP地址中的主机位
- 减少一个局域网中的设备数量可以有效降低广播报文消耗资源
- 可变长子网掩码可以将一个局域网中的主机地址分配的更加小
IP网络通信类型
- 单播(Unicast)
- 广播(Broadcast)
- 组播(Multicast)
广播地址与网络号
- 在局域网中经常会有广播的需要(比如,mac地址查询,地址冲突检测等等),所以将主机位全为1的地址做为本局域网的广播地址(广播并不能跨越不同的局域网)
- 在网络中需要表示整个局域网,就像邮政编码表示一个大的区域一样,所以将主机位全为0的地址作为本局域网的网络号,用来代指整个网段
三、TCP/UDP
1-65535
- tcp全称传输控制协议,传输层用来保障数据的可靠传输,并且携带基本的端口号
- 可靠的协议,可以知道数据丢失和差错的信息
- udp全称用户数据报文协议,只携带了基本的端口号
四、数据分装
- 数据从产生到传递到目的地的过程中会经历好几个过程,每个过程都负责加工自己这部分内容,类似于工厂流水线
数据解封装的过程和数据封装过程正好相反,数据封装是由发送者执行,数据解封装是由接收者执行
五、数据报文
文章来源:https://blog.csdn.net/dreamnn/article/details/135545648
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:chenni525@qq.com进行投诉反馈,一经查实,立即删除!