5.3.2 TCP的连接

  • 面向连接
    TCP所有的功能都是基于 一个抽象的连接

  • TCP连接的端点
    套接字(socket)端口号 拼接到 IP地址 即构成了套接字
    套接字的 表示方法 :点分十进制的IP地址后面写上端口号,中间使用冒号或逗号隔开。
    套接字socket = (IP地址:端口号)。如(192.3.4.5:80)
    每一个TCP连接唯一地通信两端的两个端点(两个套接字) 所确定。即:
    TCP连接 = {socket1,socket2} = {(IP1:port1),(IP2:port2)}

  • TCP连接的端点套接字一个套接字 只能和 唯一的另一个远地套接字 相连。
    但是:
    同一个IP地址 可以有 多个不同的TCP连接同一个端口号 也可以出现在 多个不同的TCP连接中
    但是多个客户端同时连接到服务器上的一个端口(比如80),服务器是否会新起另一个端口进行通信?
    答:
    服务器不会新起端口。 服务器的80端口 一直负责监听客户端的请求。
    如果有客户端请求,服务器始终使用 相同的初始套接字 来响应(不需要分配另一个服务器端口);
    接着创建 新的套接字(根据五元组) {SRC-IP, SRC-PORT, DEST-IP, DEST-PORT, PROTOCOL};
    然后创建一个线程或一个协程 通过刚才 新创建的套接字 来和 客户端 通信。所以服务器从头到尾只占用了一个80端口进行监听和通信。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值