sockets - 使用套接字时使用的是什么应用层协议(protocol)?

标签 sockets networking application-layer

使用 Web 浏览器时,使用的应用层协议(protocol)是 HTTP。虽然我经常使用套接字来创建与服务器的连接并传递字符串,但 Python 中经常使用的示例可能是

import socket

clientsocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
clientsocket.connect(('localhost', 8089))
clientsocket.send('hello')

发送字符串 'hello' 时使用的是什么应用层协议(protocol)用这个基本的例子?

最佳答案

在您的情况下,没有使用特定的应用层协议(protocol)。应用层协议(protocol)是某种标准,如何在 TCP/UDP 之上交换任何传输层的消息。定义了这些标准,以便不同的实现可以通过实现特定的标准来相互交互。

您也可以在不使用标准化应用层协议(protocol)的情况下使用套接字,而只需编写您自己发送的消息类型 -​​ 这正是您所做的。

关于sockets - 使用套接字时使用的是什么应用层协议(protocol)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52645165/

相关文章:

java - 将 Android 模拟器连接到本地端口

java - 连接到 Tomcat 上的套接字?

c - 选择始终返回数据

java - DataLayer的业务逻辑、应用层放在哪里?

c# - 上下文领域驱动模型验证

c - 选择功能行为 - 多客户端测验

java - 从客户端断开连接恢复服务器的最佳方法

networking - 什么是监控网络事件的好工具

linux - 如何将主机连接到她的虚拟网桥?

networking - 游戏服务器应该如何以定义的滴答率接收 udp 数据包?