计算机网络与通信原理端口设置 计算机网络与通信网络的关系

我们知道,世界上有各种各样的计算机操作系统 , 各种各样的编码方式,那么我们要实现全球的通信,是不是要建立一个普适的网络模型,来满足各种各样不同的计算机之间的通信需求?这时,TCP/IP协议定义的网络【计算机网络与通信原理端口设置 计算机网络与通信网络的关系】我们知道,世界上有各种各样的计算机操作系统  , 各种各样的编码方式,那么我们要实现全球的通信,是不是要建立一个普适的网络模型 , 来满足各种各样不同的计算机之间的通信需求?这时,TCP/IP 协议定义的网络模型和国际标准化组织 ISO 定义的 OSI(Open System Interconnection 开放式系统互联)模型就应运而生了 。TCP/IP 协议要早于 OSI 模型,并且现实生活中主要用到的是 TCP/IP 协议,OSI 模型几乎没有实现过,不过 OSI 模型仍有其理论价值 。
一、OSI 模型
OSI 模型定义了七个层 , 每个层提供不同的服务并且将功能封装起来供上一层使用 。

计算机网络与通信原理端口设置 计算机网络与通信网络的关系

文章插图
文章插图
这张图表示了每个层传输的数据单元名称以及每一层用到的协议
计算机网络与通信原理端口设置 计算机网络与通信网络的关系

文章插图
文章插图
这张图表示在最高层是原始数据 , 每往下一层就需要封装一次,传输的数据单元就会越来越大 。
二、TCP/IP
TCP/IP 协议是四层模型,它与 OSI 模型的对比如下
计算机网络与通信原理端口设置 计算机网络与通信网络的关系

文章插图
文章插图
TCP/IP 四层模型由上到下我们也通常称为:应用层、传输层、网络层、数据链路层 。
在简单了解了网络模型的层次 , 我们看看计算机之间是怎么来通信的吧!
三、寻址
大家都知道,逛淘宝买东西需要提供什么呀?自己的收货地址!不论是显示生活中的信件、快递还是网络中计算机之间的通信,我们都需要地址对吧 , 地址其实在计算机网络通信里占有非常重要的地位 。想想生活中你的家是不是有一个唯一的地址?其实每台计算机也有它唯一的地址——IP 地址(逻辑地址) 。比如百度服务器(一台性能很好的计算机)的 IP 地址 220.181.112.244,它的别名,也就是域名为 www.baidu.com 。
其实我们熟知的 IP 地址只是地址的一种 , 它工作在网络层,在传输的过程中是不可变的 。
地址分为四种:物理地址、逻辑地址、端口地址和专有地址 。
a.物理地址
物理地址工作在最底层 , 即数据链路层和物理层的?。╢rame,一种数据单位,由比特构成)中 , 它每一次传输都会改变,比如从帧 A 一台计算机 a 到一个路由器 b 使用了一组地址,该帧 A 在路由器 b 到路由器 c 中就会换另一组地址 , 它是可变的 。
b.逻辑地址
即世界上所有的计算机都有一个 32 位的地址(IPv4) , 它唯一的表示每一台计算机,后来 IPv4 地址不够用了,就出现了 IPv6 地址,128 位长 。只需记住一点 , 无论 IPv4 还是 IPv6 地址都是逻辑地址,它们是唯一的表示一台计算机的 IP 地址 。它工作在网络层,在传输的过程中是不会变的 。
c.端口地址
我们通过逻辑地址实现了计算机之间的通信,但是这样并没有什么意义,比如你在打英雄联盟,这时你需要把数据传输到其他玩家的计算机上还是传输到其他玩家的英雄联盟上呢?你打出了 100 点伤害,这样一个数字,传到计算机上毫无意义 , 但是传输到英雄联盟中 , 英雄联盟就知道你造成了 100 点伤害 , 并在游戏里计算 。这样一个简单的例子说明计算机之间的通信实质上是不同计算机之间进程的通信 。而端口号就是唯一的表示这些进程的编号 。(进程:运行着的程序)端口号有 16 位,0 到 65535,一共有 2^16 个端口号 。通过端口号可以找到计算机运行的应用程序 。如 Web 服务器对应的端口号是 80 , 我们通过 80 端口实现了上网的功能 。端口地址工作在传输层 , 在传输的过程中是不会变的,端口地址就是端口号 。
d.专用地址
最典型的例子就是邮箱地址 , 每个邮箱被邮箱地址唯一指定 , 它会被转换成对应的端口地址和逻辑地址进行传输 。专用地址工作在应用层,在传输的过程中是不会变的 。
我们可以发现,计算机地址分为 4 类刚好对应 TCP/IP4 层模型,由上到下分别为:
专用地址——应用层
端口地址——传输层
逻辑地址——网络层
物理地址——数据链路层和物理层
四、端口
所以我们常说的端口指的是我们访问主机上的某一进程的标识号,通过端口实现了计算机之间进程的通信 。例如,我们访问百度主页,实际上是我们计算机上的浏览器这一进程访问百度服务器(一台计算机)上的 Web 服务器(一款软件,也就是一个大型程序)进程 。
Web 服务器对应的端口号是 80 。就是说我们访问一个 Web 页面的正确输入应该是 IP:80 。比如百度服务器(一台计算机)的 IP 地址 220.181.112.244 , 也可以通过域名 www.baidu.com 访问(域名就是 IP 地址的) , 要访问百度页面(百度服务器上的 Web 程序)正确的输入应该是 220.181.112.244:80 或 www.baidu.com:80 。而我们通过在浏览器上输入 www.baidu.com 就能访问百度页面的原因是浏览器默认访问 80 端口 。

相关经验推荐