什么是端口号?

在谈论端口号之前我们必须先明白了解运输层的作用:

运输层:为相互通信的应用程序提供逻辑通信

在这里插入图片描述
我们都知道,在IP层协议能够把源主机A发出的分组,按照源IP地址,送到目的IP地址,那么,传输层是做什么的呢?

  • 从网络层来说,通信的是两个主机(两个局域网),IP数据报的首部明确标志了这两台主机的IP地址,但这是两台主机的沟通远远不够,因为真正需要通信的是两台主机上的进程。IP协议仅仅能够把数据传到目的主机,但这远远不够,这个分组仅仅停留在了主机的网络层而没有交付到主机的应用层。
  • 从运输层来看,通信的真正端点并不是主机而是“主机的进程”
所以,传输层和网络层的明显区别是:网络层为主机之间提供逻辑通信,而运输层提供端到端的逻辑通信

什么是端口?

我们之前在初识进程中知道,单个计算机进程是用进程标示符(PID)标志的。但是在互联网的大环境下,操作系统很多,不同的操作系统有不同的进程标识符,所以仅仅用进程标示符是不足够的。
因此,为了让不同操作系统的计算机应用程序能够互相通信,就必须用统一的方法对进程进行标志
但就算使用统一的标示符进行标识,也存在问题

  • 1.进程的创建和撤销是动态的,通信的一方几乎无法识别对方的进程
  • 2.我们需要主机提供的功能来识别通信的重点,但是我们无法识别具体的进程是哪个
    所以:运输层使用“”协议端口号“来解决这个问题,就是端口号
    端口号解决了传输层的分用问题

拓展:

在UDP/IP协议中,用源IP地址 + 源端口号 + 目的IP地址 + 目的端口号 + 协议号(组成的套接字),这样一个五元组来标识一个通信(通过netstat -n 查看)

端口范围的划分:

0-1023:知名端口号
1024-65535:操作系统动态分配的端口号,

知名端口号
  • ssh服务器,22端口
  • ftp服务器,21端口
  • telnet服务器,23端口
  • http服务器,80端口
  • https服务器,443端口(https是由ssl加密经过再经过传输协议传输的)
netstate
  • 功能:查看网络状态的工具
  • 常用选项:
    • n拒绝显示别名,能显示的数字全部转为数字
    • l仅列出listen(监听)的服务状态
    • p显示建立相关链接的程序名
    • t/u 显示tcp/udp相关的协议
    • a显示所有选项,默认显示listen相关
pidof
  • 功能:用来查看服务器中进程的pid
  • 用法:pidof[进程名]
  • 作用:通过进程名,查看进程PID
  • 31
    点赞
  • 136
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值