计算机网络端口是单向的还是双向的?

ooolinux 2019-10-23 10:23:58
比如http协议端口,ftp协议端口,客户端和服务端、读和写,是怎么使用端口的,监听、连接和传输的流程是什么?
...全文
2207 36 打赏 收藏 转发到动态 举报
写回复
用AI写文章
36 条回复
切换为时间正序
请发表友善的回复…
发表回复
luj_1768 2020-03-19
  • 打赏
  • 举报
回复 1
一个串口有两根传输数据用的线,就是有两个物理信道;其中一个被指定为上传数据,另一个被指定为下传数据;一个物理信道,可以通过时分技术或者调制技术、携载多个逻辑信道;但是,多个逻辑信道的传输率总和、不会超过物理信道的极限传输率。除了数据信号,通常还需要有控制信号的传输;这也是影响传输效率的重要因素,控制信号也要占用一个逻辑信道。通常,物理信道是单工的,逻辑信道是单向的;就是一个物理信道同时只能通过一个方向的信号,却可以通过分时使用搭载上传和下传两个逻辑信道。信道作为信号的基础传输载体,只能是单向的。而端口是通过组合多个信道来提高使用效率的。组合信道的技术主要有时分技术和调制技术。
ooolinux 2020-03-19
  • 打赏
  • 举报
回复
引用 37 楼 luj_1768 的回复:
一个串口有两根传输数据用的线,就是有两个物理信道;其中一个被指定为上传数据,另一个被指定为下传数据;一个物理信道,可以通过时分技术或者调制技术、携载多个逻辑信道;但是,多个逻辑信道的传输率总和、不会超过物理信道的极限传输率。除了数据信号,通常还需要有控制信号的传输;这也是影响传输效率的重要因素,控制信号也要占用一个逻辑信道。通常,物理信道是单工的,逻辑信道是单向的;就是一个物理信道同时只能通过一个方向的信号,却可以通过分时使用搭载上传和下传两个逻辑信道。信道作为信号的基础传输载体,只能是单向的。而端口是通过组合多个信道来提高使用效率的。组合信道的技术主要有时分技术和调制技术。


通信基本原理了,然而并没有说到计算机网络的端口。
ooolinux 2019-10-31
  • 打赏
  • 举报
回复
引用 35 楼 You_can_I_can 的回复:
一般一个应用程序(这里指的是后台程序)启动后会监听某一个端口,一般是80端口,也可以是其他的。当某个客户端请求该应用程序上的资源时,首先会通过三次握手建立连接,这个过程其实就是调用socket相关接口与后台程序建立一个通信通道,连接建立完成后后台和客户端都会创建一个文件描述符(对应一个随机端口),后续大家都通过这个端口进行数据交换。虽然从客户端角度来看数据源port始终是80端口,但其实后台应用程序内部是使用一个随机的文件描述符来写和读数据的


连接建立完成后后台和客户端都会创建一个文件描述符(对应一个随机端口),后续大家都通过这个端口进行数据交换
————
是不是用这个随机端口建立一个socket连接呢?
You_can_I_can 2019-10-31
  • 打赏
  • 举报
回复
一般一个应用程序(这里指的是后台程序)启动后会监听某一个端口,一般是80端口,也可以是其他的。当某个客户端请求该应用程序上的资源时,首先会通过三次握手建立连接,这个过程其实就是调用socket相关接口与后台程序建立一个通信通道,连接建立完成后后台和客户端都会创建一个文件描述符(对应一个随机端口),后续大家都通过这个端口进行数据交换。虽然从客户端角度来看数据源port始终是80端口,但其实后台应用程序内部是使用一个随机的文件描述符来写和读数据的
  • 打赏
  • 举报
回复
引用 30 楼 ooolinux 的回复:
[quote=引用 29 楼 早打大打打核战争 的回复:]
https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers

The Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP) needed only one port for full-duplex, bidirectional traffic. ...


这个是怎么实现的?一般的通信,上行信道和下行信道都是单向的,当然一种介质包含很多信道。[/quote]

物理上,网线的发送、接收各有一条线,逻辑上,每个socket都有发送缓冲区和接收缓冲区。
ooolinux 2019-10-30
  • 打赏
  • 举报
回复
引用 33 楼 早打大打打核战争 的回复:
[quote=引用 30 楼 ooolinux 的回复:]
[quote=引用 29 楼 早打大打打核战争 的回复:]
https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers

The Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP) needed only one port for full-duplex, bidirectional traffic. ...


这个是怎么实现的?一般的通信,上行信道和下行信道都是单向的,当然一种介质包含很多信道。[/quote]

物理上,网线的发送、接收各有一条线,逻辑上,每个socket都有发送缓冲区和接收缓冲区。
[/quote]

应该是这样了。
dtt15582369760 2019-10-29
  • 打赏
  • 举报
回复
计算机网络端口是双向的。
ooolinux 2019-10-28
  • 打赏
  • 举报
回复
引用 25 楼 luj_1768 的回复:
计算机通信,原则上讲,是按信道传输的:信道使用时是单工的,也就是单向传输;一个端口可以有多个信道。
一个端口可以有多个信道,这个有没有相关资料?
小熊之怒 2019-10-28
  • 打赏
  • 举报
回复
引用 19 楼 ooolinux 的回复:
[quote=引用 16 楼 小熊之怒 的回复:]
端口,确定的是具体哪个应用。
缓冲是在端口确定之后 的概念。
可以这么理解,同一个应用的接收和发送缓冲,是在同一个端口号内。(只针对于tcp)
udp是没有缓冲的。


引用 18 楼 早打大打打核战争 的回复:
udp是没有缓冲的 X


难道想的是udp是没有连接的?[/quote]

udp也可以有连接,也可以没有,看怎么用了。
luj_1768 2019-10-28
  • 打赏
  • 举报
回复
计算机通信,原则上讲,是按信道传输的:信道使用时是单工的,也就是单向传输;一个端口可以有多个信道。
ooolinux 2019-10-28
  • 打赏
  • 举报
回复
引用 28 楼 weixin_44690344 的回复:
也被这个问题困惑着,学习一下!


找到好的资料链接发上来一起学习。
ooolinux 2019-10-28
  • 打赏
  • 举报
回复
引用 29 楼 早打大打打核战争 的回复:
https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers

The Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP) needed only one port for full-duplex, bidirectional traffic. ...


这个是怎么实现的?一般的通信,上行信道和下行信道都是单向的,当然一种介质包含很多信道。
  • 打赏
  • 举报
回复
https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers

The Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP) needed only one port for full-duplex, bidirectional traffic. ...
weixin_44690344 2019-10-28
  • 打赏
  • 举报
回复
也被这个问题困惑着,学习一下!
ooolinux 2019-10-27
  • 打赏
  • 举报
回复
引用 23 楼 zzxxmnzx 的回复:
双向,有收有发,相互传送
我指的是同一个端口。
zzxxmnzx 2019-10-27
  • 打赏
  • 举报
回复
双向,有收有发,相互传送
ooolinux 2019-10-27
  • 打赏
  • 举报
回复
引用 21 楼 weixin_45802699 的回复:
应该是双向的吧
有资料最好。
weixin_45802699 2019-10-27
  • 打赏
  • 举报
回复
应该是双向的吧
ooolinux 2019-10-26
  • 打赏
  • 举报
回复
引用 16 楼 小熊之怒 的回复:
端口,确定的是具体哪个应用。 缓冲是在端口确定之后 的概念。 可以这么理解,同一个应用的接收和发送缓冲,是在同一个端口号内。(只针对于tcp) udp是没有缓冲的。
引用 18 楼 早打大打打核战争 的回复:
udp是没有缓冲的 X
难道想的是udp是没有连接的?
  • 打赏
  • 举报
回复
udp是没有缓冲的 X
加载更多回复(16)
Re:计算机网络  应用层 诸多协议 实验环境搭建  DNS、DHCP、HTTP、FTP、Telnet、RDP、STMP、POP3、IMAP======================# 应用层 诸多协议 域名系统 DNS 动态主机配置协议 DHCP 超级文本传输协议 HTTP 文件传输协议 FTP Telnet 协议和 RDP(远程桌面协议) 发送电子邮件的协议 SMTP  接收电子邮件的协议 POP3 和 IMAP # 什么是域名 整个Internet网站和各种服务器数量众多,各个组织的服务器都需要给一个名称,这就很容易重名。如何确保Internet上的服务器名称在整个Internet唯一呢?这就需要Internet上有域名管理认证机构进行统一管理。如果你的公司在互联网上有一组服务器(邮件服务器、FTP服务器、Web服务器等),你需要为你的公司先申请一个域名,也就是向管理认证机构注册一个域名。 域名的注册遵循先申请先注册为原则,管理认证机构要确保每一个域名的注册都是独一无二、不可重复的。 # 动态主机配置协议 DHCP 静态地址和动态地址应用场景 DHCP 地址租约 DHCP 租约生成过程 DHCP 地址租约更新 # Telnet 协议 Telnet是一个简单的远程终端协议(非加密、且简单),它也是因特网的正式标准。用户使用telnet客户端就可以连接到远程运行Telnet服务的设备(可以是网络设备例如:路由器、交换机,也可以是操作系统,比如Windows或Linux等),进行远程管理。 Telnet能将用户的键盘指令传到远地主机,同时也能将远地主机的输出通过TCP连接返回到用户屏幕。这种服务是透明的,因为用户感觉到好像键盘和显示器是直接连在远地主机上。因此,Telnet又称为终端仿真协议。 Telnet并不复杂,以前应用得很多。现在由于操作系统(Windows和Linux)功能越来越强,用户己较少使用Telnet了。不过配置Linux服务器和网络设备还是需要 Telnet 来实现远程管理和配置 # 远程桌面协议 RDP 现在Windows操作系统很少使用telnet进行远程管理了,更多是使用远程桌面进行远程管理。 Windows系统启用远程桌面,客户端使用远程桌面客户端(mstsc)进行连接。 它们之间使用RDP协议进行通信,RDP协议默认使用TCP的3389端口。 # http 协议、版本和网页 创建网页(准备创建网站、需要设计网页和安装Web服务器) 统一资源定位符URL 绝对路径和相对路径 创建Web站点 HTTP协议版本 HTTP请求报文和响应报文 HTTP响应报文: Cookie 通过代理服务器访问网站 # 文件传输协议 FTP FTP 是File Transfer Protocol(文件传输协议)的英文简称。用于Internet上的控制文件的双向传输。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。 在FTP的使用当中,用户经常遇到两个概念:“下载”(Download)和“上传”(Upload)。“下载”文件就是从远程主机拷贝文件至自己的计算机上;“上传”文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。 简单地说,支持FTP协议的服务器就是FTP服务器。 # 安装和配置邮件服务器  模拟整个互联网发送邮件的过程 发送电子邮件的协议 SMTP  接收电子邮件的协议 POP3 和 IMAP--------------------------------------              

1,738

社区成员

发帖
与我相关
我的任务
社区描述
网络协议与配置相关内容讨论专区
网络协议网络安全tcp/ip 技术论坛(原bbs)
社区管理员
  • 网络协议与配置社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧