当两台计算机通过网络连接进行交互时,它们首先必须建立套接字连接吗?

时间:2018-10-19 09:02:31

标签: sockets computer-science

请回答是或否。这将解决我的疑问。 1.是从计算机1发送到计算机2的发布/获取请求,然后他们首先必须建立套接字连接吗? 2.当2台计算机通过ssh连接时,它们首先必须建立套接字连接,然后才可以相互通信?

2 个答案:

答案 0 :(得分:1)

您提供的示例涉及网络连接,而套接字是在现代计算机网络上进行通信时常用的抽象概念。但是,可以使用其他抽象。这就是Damien_The_Unbeliever在评论中所说的。例如,您可以询问是否for循环是遍历数组的唯一方法。答案是一样的:for循环是在数组元素上循环的通用抽象,但是还有其他等效的(从机器代码意义上)使用其他抽象的方法。

从根本上讲,计算机可以完全不使用网络而彼此通信。您可以让计算机通过由网络摄像头和监视器组成的接口进行通讯;通过在屏幕上放置一些东西来完成发送,通过接收视频源来完成接收。您可以对麦克风和扬声器执行相同的操作。您可以使用机械臂,键盘和鼠标进行相同的操作。两台计算机可以使用人工快递员互相通信;我的工作和家用计算机会定期执行此操作!计算机可以写信并邮寄,传递信件,也可以使用信鸽将它们发送给其他旨在接受这些格式信息的计算机。

答案 1 :(得分:0)

请回答是或否。这将解决我的疑问。 [确定]

  1. 是否将 post/get 请求从计算机 1 发送到计算机 2,然后他们必须先建立套接字连接? 在这种情况下,是的,但是如果请求来自浏览器,那么它会为您服务。您可以看到 get 和 post 的 url 中包含端口号。如果没有提到默认端口是 80,一般来说。例如,如果您使用 WebSphere Application Server,如果配置了 IBM HTTP Server,则默认端口为 9081 或 80。
  2. 当两台计算机使用 ssh 连接时,它们首先必须建立一个套接字连接,然后才能相互通信? 在这种情况下,再次是的,ssh 中的端口为 22