究竟什么是X11频道

时间:2015-06-10 22:11:25

标签: x11

在X11的所有文档中,到目前为止我发现了类似的内容

  

服务器和客户端之间的通信是通过通道交换数据包完成的。连接由客户端建立(协议中未指定客户端如何启动)。 (来自维基百科)

我无法确切地找到这个频道是什么?例如网络频道?它在港口吗?它是一张记忆图吗?任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:2)

'频道'故意模糊,因为它可以通过本地套接字,远程连接(例如SSH),命名管道或允许客户端/服务器双向通信的其他方法。也就是说,一个'频道'只是两点之间的连接,便于数据交换。

通过SSH执行X11转发时,该通道是SSH连接。请参阅SSH man页面,例如:

$ man ssh

  

X11连接和任意TCP / IP端口也可以通过安全通道转发。

或根据x.org文档:

  

X客户端和服务器之间的通信通道是全双工的:任何一方都可以随时向另一方发送消息。这是通过TCP / IP套接字接口规范实现的,尽管经常使用其他通信通道,包括Unix域套接字,命名管道和共享内存。通道必须提供可靠的有序字节流--X协议不提供重新排序或重新发送数据包的机制。

答案 1 :(得分:2)

X11支持客户端和服务器之间的多种形式的通信。这些所谓的通道可以是TCP套接字,UNIX套接字和一堆其他网络机制,如DECnet,令牌环等.TCP和UNIX套接字实际上是目前唯一使用的。

X服务器是一个可以访问图形硬件,键盘和鼠标的进程。在计算机屏幕上生成图形的任何应用程序都称为客户端。通常,工作站在X服务器上运行,并且有多个X客户端。应用程序(客户端)需要通过TCP套接字(由IP地址和端口号标识)或通过UNIX套接字(由文件名标识,例如/ tmp / X0)连接到X-Server

如果服务器和客户端都运行在同一系统上,则它们通常通过UNIX套接字连接。但是,X11的一个重要特性是服务器和客户端没有驻留在同一系统上,而是通过TCP套接字连接到网络。这允许我们在网络上的不同计算机上运行应用程序,并将其图形输出放在单个屏幕上。 (单个应用程序也可以连接到多个X服务器并在多个屏幕上分发图形内容。)