计算机网络端口

应用在通信过程中是通过端口来识别发送交付的。那么通信的一方是怎么知道对方的应用进程的端口号呢?

2017年12月25日,星期一,

简单点说这些信息都被封装在ip包内,

我个人觉得你现在不太明白的地方是不太清楚数据包在传递过程中,每一跳hop对数据包的操作,

首先,你要知道,我们现在使用最广泛的非iso的网络标准是 TCP/IP,

从下到上分为:

物理层

数据链路层

网络层

传输层

应用层

在最底层也就是第一层中,数据是以码流的形式,即一串的2进制数,比如在某一时刻,网络中传输着一串二进制数 :00010001,而这串二进制数的真实含义,要看它在应用层属于哪个程序,也许这是一张图片中的一个色块,也许是一个文件的一部分,也许是一个视频的一帧,也许只是一个二进制数17,

在数据链路层,则是以数据帧的形式传输数据,这里是每一个网络设备将从底层物理层接收到的二进制码流转换成数据帧的形式,帧有头有尾,在头尾之中夹着ip数据包,帧头中存储着目的mac和源mac,接收数据帧的网路设备就是通过分析这些信息来判断是否要继续向自己的上层提供这个数据信息,如果目的mac是自己,那么这个网络设备将剥掉数据帧的帧头和帧尾,将帧中夹着的ip包送往上层网络层,

在网络层,接收到的是从下层数据链路层送上来的ip包,然后此网络设备将根据源ip和目的ip来判断是否要继续处理此数据包,并进行相应的处理后送往上层传输层,或直接查找路由表进行ip包的转发,当然一般来说,对ip包的分析,通常只看目的ip,

在传输层,接收到ip包中夹着的数据段segment等信息,这些信息中就包含有端口号,这些端口号有些是已经被规定好的即保留的端口号已经指定给某个应用进程的了,就是说通过这个端口号来区分应用程序,应用进程,比如ftp文件传输协议这个应用层进程就使用的是20和21这两个端口,telnet这个应用进程则使用的是23这个端口号,而有些则是可以被应用程序自定义使用的,一般,为各种公共服务保留的端口号范围为:1~1023,

综上所述,计算机就是通过将从物理层收集上来的数据码流经过转换,变成数据帧,然后再由数据链路层将数据帧处理,剥离帧头帧尾后将ip数据包送往网络层,然后网络层再将数据包中的segment数据信息送往传输层,传输层组装后,查看其中携带的端口号,来进行对应用程序的区分,也就说,从底层到高层是一层层的剥离并抽出数据信息然后发往高层,而相反的,从高层到底层,数据是一层层的加壳的信息,指导最终变成二进制形式的数据码流,通过线缆等信道进行传输,

这里多说一句,为什么要最终转化成二进制的信息来进行数据的传递,这当然不光是因为计算机是二进制的关系,更重要的是,二进制可以配合电平的高与低,电子开关的通与断来进行编码,从而有利于在信道中传输。

August2024the31thSaturday

相关推荐
Keepingrun7 分钟前
HTTP基础
网络·网络协议·http
rcms1527026921829 分钟前
AMAT 350-00010-001 PCB 板
网络
蓝田~1 小时前
AI 图片与视频处理 — 从原理到实践
网络·人工智能·音视频
apihz2 小时前
全球域名 WHOIS 信息实时查询免费 API 接口教程,支持1000+后缀
android·网络·网络协议·tcp/ip·apache·域名·whois
乐橙开放平台3 小时前
巡店系统笔记:乐橙 listDeviceDetailsByPage 台账 + bindDeviceLive 辅码流最小闭环
网络·笔记·物联网·自动化·音视频·智能家居
酣大智3 小时前
OSPF 虚链路实验
网络·ospf
珠海西格电力4 小时前
西格电力零碳园区管理系统:核心功能全解析,赋能园区低碳智能化落地
大数据·运维·网络·人工智能·信息可视化·能源
ZPC82104 小时前
model bingxing
网络·人工智能·网络协议·机器人
运维行者_4 小时前
广域网性能监控:分布式IT架构下的链路质量保障
开发语言·网络·分布式·后端·架构·数据库架构
CoreTK芯通康EMC整改4 小时前
Type-C 高速接口 ESD 失效深度解析:器件选型 + PCB 布局双重解决方案
大数据·网络·emc·芯通康·pcb电磁兼容