服务器与客户端进程之间端口号联系

虚拟房间>gprs水表
服务器客户端进程之间端⼝号联系
服务器和客户端都有端⼝号,但是,服务器的端⼝号是重要的,因为客户端只有了解了服务器的地址和端⼝号,才可以连接到它(即使是采⽤UDP传输数据,也需要指定发送⽬标的地址和端⼝号);⽽客户端的端⼝号是⽆关紧要的,⼀般由操作系统⾃动分配。
服务端怎么知道和客户端的哪个进程连接
---------------------------------------------------------
u魅对于TCP,服务器在客户端连接后,会在监听套接字之外另外⽣成⼀个新的套接字,表⽰与客户端的连接,这个套接字了解客户端的地址和端⼝号,从⽽可以区分是哪个客户端;
对于UDP,服务器在收到UDP数据时,也了解数据来⾃什么地址和端⼝,也可以区分是哪个客户端。
从基本的⽹络概念来说,⽹络层(IP)负责两个主机间的通信,⽤IP地址区分主机;传输层(TCP和UDP)处理两个进程间(可以是在同⼀台机器中的两个进程,也可以是不同主机中的两个进程)的通信,⽤端⼝号区分进程。两者合起来就是,⽤ IP地址+传输层协议+端⼝号来区分与谁进⾏通信。(传输层协议就是指TCP或者UDP,也可以是别的传输层协议,因为互联⽹协议栈是个开放的结构,其他传输层协议也可以利⽤IP作为⽹络层提供的服务)
智能美甲
不论是服务器编程还是客户端编程,其中设置的主机(ip地址),端⼝号都是服务器端的ip和端⼝号。客户端的端⼝号由系统⾃动分配。客户端端⼝号和服务器端的端⼝号没必要相同。服务器要监听客户机的链接,所以需要⼈为的设置绑定端⼝。这样客户端才能根据ip地址和端⼝号访问服务器。服务器端的
紧急切断装置accept()函数接收到客户端连接时,便重新建⽴⼀个socket,这个socket⾥⾯含有客户端的地址和端⼝号信息,以此实现服务器和客户端的通信。侦听端⼝是服务器向客户端所开放的端⼝,也就是客户端要连接服务器需要的⽬标端⼝。通信端⼝是客户端去访问服务器端⼝时所携带的源端⼝,这两个端⼝号是不⼀样的,服务端侦听的端⼝号⼀般是固定的,⽽客户端的通信源端⼝号是随机产⽣的。荧光灯支架
如果想⾃⼰指定客户端的端⼝,那么可以向在服务端⼀样,在socket()创建客户端套接字后,调⽤⼀下bind()函数来绑定本机端⼝。然后在调⽤connect()函数绑定服务器的主机和端⼝。

本文发布于:2024-09-21 21:42:53,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/102280.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:客户端   服务器   络层   地址   连接   进程
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议