Socket初级问题?
最近学习了一下Socket编程,有些疑惑希望高手帮忙解决一下。
我理解的Socket通信的基本步骤是这样的。
1. server 调用bind绑定一个端口然后listen监听端口然后用accept(阻塞或非阻塞)等待client连接
2. client 调用connect连接server
3. server 调用appcept获取到真实用来传输数据的新的Socket
4. client与server调用send/recv通信
我的问题是server在bind的时候我可以指定端口等待client的连接,那么accept的时候获取到了另外一个socket这个的端口是怎么生成的能详细说明下吗?为什么server和client的recv/send用的时候不同的socket.