请听题:一个数据包如何在网络中传递?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请听题:一个数据包如何在网络中传递?相关的知识,希望对你有一定的参考价值。
传统的OSI参考模型和TCP/IP模型的关系和区别
TCP/IP模型
在网络上,一个协议对应于管理系统之间如何相互通信的规则 OSI模型和TCP/IP模型是现在网络中常用的协议 指定通信的规则为了保障客户的权益(在客户的现网中 会出现不同厂商的网络设备)
目前应用的比较广泛的是TCP/IP模型
TCP/IP模型
应用层:APP层 腾讯QQ 微信 开发工程师 程序员
DHCP协议 DNS协议等等
传输层:TCP协议 UDP协议 防火墙设备 安全工程师
TCP协议 UDP协议
网络层:(三层)路由器或者三层交换机 网络工程师
OSPF协议 ICMP协议(ping tracert)
链路层:(二层)二层交换机 网络工程师
stp协议 vlan
物理层:网线(双绞线)
总结
网工工程师一定要关注我们网络层和链路层
安全工程师要关注 传输层 应用层
程序员 只需要关注应用层
网工发展路径
路由交换--->>>数通安全--->>>云计算--->>>Ptyhon语言
网络工程师 安全工程师 云计算工程师 开发工程师
深入理解TCP/IP模型当中每一层代表协议和重要字段
应用层
传输层协议+端口号等于应用层协议
TCP协议+23端口=telnet协议(应用层)
常见的应用层协议:telnet协议、dns协议等
传输层
源端口号 目标端口号 端口号共16bit 2的16次方=65536 端口号的范围就是0~65535(其中0~1023是一些知名端口 1024~65535是非知名端口)
一般来说源端口号是随机的(取值是1024~65535)
目标端口号一般来说都是一些知名端口(0~1023端口)
端口号的理解:代表一个主机的不同服务
web服务:192.168.1.1:80
telnet服务:192.168.1.1:23
常见端口号:80端口、23端口、22端口、21端口
网络层
简称为三层 三层里面有一个逻辑地址 比如:192.168.1.1
源IP地址 目标IP地址
一般情况下 在数据包的传递过程中 SIP和DIP不会发生变化
链路层
简称二层 二层里面有一个物理地址 比如:0823-abcd-cc33 这个地址叫做MAC地址 全球标识我们网络设备的
源mac地址 目标mac地址
一般情况下 在数据包的传递过程中 SMAC和DMAC是不断变化的
MAC地址这一块分为两部分 前24bit是由美国那边组织分配给厂商这边 后面24bit是由厂商自行分配给网络设备
物理层
网线(光纤)
两台电脑之间数据传递过程中的封装和解封装
数据的封装
数据在发送之前会进行封装
APP头部 数据
UDP头部 APP头部 数据
IP头部 UDP头部 APP头部 数据
以太网头部 IP头部 UDP头部 APP头部 数据
就会变成比特流传输传输给对端
总结:逐渐加头部的过程 是从应用封装到物理层
数据解封装
当服务器接收数据流量的时候 我这边会进行解分装
首先会接收比特流
IP头部 UDP头部 APP头部 数据
UDP头部 APP头部 数据
APP头部 数据
数据
总结:逐渐去掉头部的过程 是从物理层解封装到应用层
动态观看如下动画
以上是关于请听题:一个数据包如何在网络中传递?的主要内容,如果未能解决你的问题,请参考以下文章
在Android中,如何将数据从类传递到相应的布局/片段文件?