SOCK_STREAM

简介: SOCK_STREAM

SOCK_STREAM 是在BSD Socket API中定义的一种套接字类型,它对应于传输控制协议(Transmission Control Protocol,TCP)。在C语言和其他支持Socket编程的语言中,当你创建一个套接字时,可以选择使用SOCK_STREAM作为套接字类型,这表明你将通过TCP来建立一个面向连接、有序且可靠的数据传输服务。

具体特征包括:

  • 面向连接:在数据交换之前,必须先建立连接,类似于打电话的过程,双方握手成功后才能开始通信。
  • 可靠性:TCP提供了一种错误检测机制,每个数据段都有确认响应,确保数据能够无差错、不丢失、不重复地到达接收方。
  • 顺序保证:数据包按照发送顺序到达接收方,如果发生乱序,TCP会重新排序。
  • 流量控制:TCP通过滑动窗口机制管理发送速率,避免接收方来不及处理数据而导致数据溢出。
  • 拥塞控制:TCP可以根据网络状况动态调整其数据发送速度,以防止网络过载。

使用SOCK_STREAM类型的套接字通常应用于需要高可靠性和数据完整性,以及可能涉及大量数据或者长时间连续通信的应用场景,例如HTTP、FTP、SMTP等协议都是基于TCP实现的。在程序中创建此类套接字时,一般会配合AF_INET或AF_INET6地址家族(分别对应IPv4和IPv6),以便在网络上建立点对点的通信连接。

目录
相关文章
|
28天前
|
网络协议 安全 网络安全
原始套接字-SOCK_RAW
原始套接字-SOCK_RAW
|
2月前
|
网络协议 网络性能优化
SOCK_STREAM(流式套接字)
SOCK_STREAM(流式套接字)
20 1
|
2月前
|
Unix API
SOCK_DGRAM
SOCK_DGRAM
18 2
|
网络协议 安全 Unix
socket 到底是个啥
咸鱼将跟大家打开 socket 的神秘大门,不但要搞清楚 socket 的概念,最好还能够了解它的底层实现
stream_socket_accept peername和stream_socket_get_name
stream_socket_accept peername和stream_socket_get_name
53 0
|
监控 网络协议 Unix
Socket的基本操作函数socket()、bind()、listen()、connect()、accept()、recv()、send()、select()、close()
Socket的基本操作函数socket()、bind()、listen()、connect()、accept()、recv()、send()、select()、close()
680 0
Socket的基本操作函数socket()、bind()、listen()、connect()、accept()、recv()、send()、select()、close()
|
网络协议 Unix
一切皆Socket
“一切皆Socket!” 话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。 ——有感于实际编程和开源项目研究。   socket()函数介绍 socket函数介绍 函数原型 domain type protocol errno 示例   函数原型 socket()函数的原型如下,这个函数建立一个协议族为domain、协议类型为type、协议编号为protocol的套接字文件描述符。
1438 0
|
流计算 数据安全/隐私保护 开发工具
|
流计算 数据安全/隐私保护 开发工具

热门文章

最新文章