[原创]端口与socket

socket--插座,套接字
网络程序的的通讯成为一个程序的socket插座流入到另一个程序的socket插座

端口号与socket
比如ftp负责控制命令传输的端口21,有一个socket绑定到这个端口(记为sCtrlSocket),一直监听,一旦监听到有连接请求,就Socket tempSocket = sCtrlSocket.Accept();这个时候客户端上的一个socket(没有对应客户机上的一个端口)就与服务器上的tempSocket建立了一个链接,服务器上的tempSocket不是独占21端口而是通过21端口与客户端建立了一个传输通路,之后可以有许许多多与tempSocket一样的服务器上的socket去和发来连接请求的客户端socket建立链接.
tempSocket1,tempSocket2,tempSocket3...............工作起来之间当然不会出现混淆,因为他们都是通过自己的一个链路在传输着.
但是ftp的特殊在于除了控制命令传输还有数据的实际传输
设计时当然是一个tempSocket(控制命令传输用)对应一个线程,进入他的线程之后,如果需要数据传输,就在这个线程中:myDataSocket = sDataSocket.Accept();//sDataSocket是绑定到服务器上20端口的负责数据传输的,这样许多客户端之间就不会有干涉.
当然还要说PORT和PASV两种模式在程序中的实现..........(待续)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
网络技术中,端口号是用来标识应用程序或服务的特定通信端口的数字。socket是一种用于在计算机网络中进行通信的编程接口。它通过使用端口号来建立网络连接。 具体来说,端口号是一个16位的数字,范围从0到65535。其中,0到1023的端口号被称为知名端口(well-known port),用于常见的应用程序和服务,如HTTP(端口号80)、FTP(端口号21)等。而1024到49151的端口号被称为注册端口,用于分配给用户自定义的应用程序和服务。最后,49152到65535的端口号被称为动态或私有端口,用于临时分配给客户端应用程序。 在 socket 通信中,服务器通常会监听一个特定的端口号,用于接受来自客户端的连接请求。而客户端则会选择一个未被使用的端口号来与服务器进行通信。这样,通过不同的端口号组合,可以实现多个应用程序或服务之间的并行通信。 总结来说,socket是一种网络编程接口,而端口号则用于标识应用程序或服务的特定通信端口,从而实现网络连接和通信。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [socket连接方式及端口Port](https://blog.csdn.net/z15732621582/article/details/79603565)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [socket IP地址和端口号](https://blog.csdn.net/y_dd6011/article/details/120931161)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值