tcp ip协议规定计算机的端口有,计算机网络、TCP/IP协议、端口号

在介绍socket网络编程之前,我们肯定是要介绍一下网络之间的信息传递。通过计算机网络我们可以把信息传递到任何地方,但是在计算机网络中实现通信必须有一些约定,这些约定被称为通信协议。通信协议负责对传输速率、传输代码、代码结构、传输控制步骤、出错控制等制定处理标准。为了让两个节点能进行对话,必须在它们之间建立通信工具,使彼此之间能进行信息交换。

国际标准化组织(ISO)于 1978 年提出了“开放系统互连参考模型”,即著名的 OSI(Open System Interconnection)参考模型。OSI 参考模型把计算机网络分成物理层、数据链路层、网络层、传输层、会话层、表示层、应用层七层,受到计算机界和通信业的极大关注。经过十多年的发展和推进,OSI 模式已成为各种计算机网络结构的参考标准。这个学过计算机的都应该知道这七层。

通信协议是网络通信的基础,IP 协议则是一种非常重要的通信协议。IP(Internet Protocol)又称网际协议,是支持网间互联的数据报协议。IP 协议提供了网间连接的完善功能,包括 IP 数据报规定的互联网络范围内的地址格式。

经常与 IP 协议放在一起的还有 TCP(Transmission Control Protocol),即传输控制协议,它规定了一种可靠的数据信息传递服务。虽然 IP 和 TCP 这两个协议的功能不尽相同,也可以分开单独使用,但它们是在同一个时期作为一个协议来设计的,并且在功能上是互补的,因此,在实际使用中常常把这两个协议统称为 TCP/IP 协议。只有把 TCP 和 IP 两个协议结合起来,才能保证 Internet 在复杂的环境下正常运行凡是要连接到 Internet 的计算机,都必须同时安装和使用 TCP/IP 协议。

TCP/IP 协议最早出现在 UNIX 操作系统中,现在几乎所有的操作系统都支持 TCP/IP 协议,因此 TCP/IP 协议也是 Internet 中最常用的基础协议。按照 TCP/IP 协议模型,网络模型通常被分为四层。OSI 参考模型和 TCP/IP 分层模型的大致对应关系如下图 所示。

IP 地址和端口号

IP 地址用于唯一标识网络中的一个通信实体,这个通信实体既可以是一个主机,也可以是一台打印机,或者是路由器的某一个端口。而在基于 IP 协议的网络中传输的数据包,都必须使用 IP 地址来进行标识。

就像写一封信,要标明收信人的地址和寄信人的地址,而邮政工作人员则通过该地址来决定信件的去向。类似的过程也发生在计算机网络中,被传输的每一个数据包也要包括一个源 IP 地址和一个目的 IP 地址。当该数据包在网络中进行传输时,这两个地址要保持不变,以确保网络设备总能根据确定的 IP 地址,将数据包从源通信实体送往指定的目的通信实体。

IP 地址是数字型的,它是一个 32 位(32 bit)整数。但为了便于记忆,通常把它分成 4 个 8 位的二进制数,每 8 位之间用圆点隔开,每个 8 位整数都可以转换成一个 0~255 的十进制整数,因此日常看到的 IP 地址常常是这种形式:202.9.128.88。IP 地址被分成 A、B、C、D、E 五类,每个类别的网络标识和主机标识各有规则:

IP 地址用于唯一标识网络上的一个通信实体,但一个通信实体可以有多个通信程序同时提供网络服务,此时还需要使用端口。

端口是一个 16 位的整数,用于表示将数据交给哪个通信程序处理。因此,端口就是应用程序与外界交流的出入口,它是一种抽象的软件结构,包括一些数据结构和 I/O(输入/输出)缓冲区。

不同的应用程序处理不同端口上的数据,在同一台机器中不能有两个程序使用同一个端口。端口号可以为 0~65535,通常将端口分为如下三类:

如果把应用程序比作人,把计算机网络比作类似于邮递员的角色,把 IP 地址理解为某个人所在地方的地址(包括街道和门牌号),但仅有地址是找不到这个人的,还需要知道这个人所在的房间号才可以找到他,这个房间号就相当于端口号。因此,当一个程序需要发送数据时,需要指定目的地的 IP 地址和端口号,只有指定了正确的 IP 地址和端口号,计算机网络才可以将数据发送给该IP地址和端口号所对应的程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值