`
lizaochengwen
  • 浏览: 658219 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

SOCK_STREAM和SOCK_DGRAM

 
阅读更多
sock_stream   是有保障的(即能保证数据正确传送到对方)面向连接的SOCKET,多用于资料(如文件)传送。 
sock_dgram   是无保障的面向消息的socket , 主要用于在网络上发广播信息。 
SOCK_STREAM是基于TCP的,数据传输比较有保障。SOCK_DGRAM是基于UDP的,专门用于局域网,基于广播 
SOCK_STREAM 是数据流,一般是tcp/ip协议的编程,SOCK_DGRAM分是数据包,是udp协议网络编程。
分享到:
评论

相关推荐

    大多数程序员所接触到的套接字(Socket)为两类:

    根据传输层协议的不同,可以将套接字分为两大类:**流式套接字(SOCK_STREAM)**和**数据报式套接字(SOCK_DGRAM)**。 #### 流式套接字(SOCK_STREAM) 流式套接字是一种面向连接的Socket,主要用于基于TCP的服务...

    SOCK_RAW-FOR-Linux.rar_RAW_SOCK_RAW perl_linux sock raw_sock_ra

    1. 套接字类型:在Linux中,套接字可以分为不同类型,如SOCK_STREAM(面向连接,TCP)、SOCK_DGRAM(无连接,UDP)和SOCK_RAW。SOCK_RAW提供了一种方式,让用户可以直接与网络协议栈交互,处理未经过协议解析的原始...

    Linux下SOCK_RAW原理和应用

    套接字有多种类型,如SOCK_STREAM(面向连接的,如TCP)和SOCK_DGRAM(无连接的,如UDP)。而SOCK_RAW则提供了对网络协议头的直接控制,允许开发者绕过操作系统对网络数据包的处理,直接与网络接口层通信。 使用...

    vc.zip_socket_socket编程_vc sock tcp_vc++服务开发_whonyg

    服务端和客户端代码,sockets (套接字)编程有三种,流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM), 原始套接字(SOCK_RAW);基于 TCP 的 socket 编程是采用的流式套接字。在这个程序中,将两个工 程...

    使用SOCK-DGRAM类型的socket实现的ping程序

    在创建socket时,有多种类型可供选择,如`SOCK_STREAM`(面向连接,用于TCP),`SOCK_DGRAM`(无连接,用于UDP),以及`SOCK_RAW`(用于发送和接收原始数据包,包括ICMP)。在本文的实现中,由于`SOCK_STREAM`不适用于ping...

    Linux domain sockets 编程.rar_Sockets_linux_linux domain sock_sock

    1. **类型与地址**:Linux域套接字有两种类型,流式(SOCK_STREAM)和数据报式(SOCK_DGRAM),分别对应于TCP和UDP。流式提供面向连接的服务,确保数据顺序和可靠性;数据报式则无连接,但不保证顺序和可靠性。 2. ...

    socket UDP.zip_C语言_TCP通信_TP_stream_原始套接字

    数据报socket(SOCK_DGRAM):数据报套接字定义了一种无连接的服务,数据通过相互独立的报文进行传输,无序的,并且不保证可靠,无差错的。它使用的数据报协议是UDP。 原始socket:原始套接字允许对底层协议如TP或ICMP...

    安徽理工大学2017网络编程试卷及卷参考答案.doc

    在 SOCK_STREAM 和 SOCK_DGRAM 套接口调用 connect 函数的异同** - **相同点**:都可以使用 `connect` 函数来指定通信的远端地址。 - **不同点**: - 对于 SOCK_STREAM 类型,`connect` 是必需的,因为它是面向...

    Linux网络编程:原始套接字编程及实例分析.docx

    在探讨原始套接字(SOCK_RAW)之前,我们先回顾一下常见的两种套接字类型:流式套接字(SOCK_STREAM)和数据报式套接字(SOCK_DGRAM)。前者是一种面向连接的套接字,适用于基于TCP的服务;后者则是一种无连接的套接...

    Linux下Socket编程

    Socket类型主要有两种,分别是流式Socket(SOCK_STREAM)和数据报式Socket(SOCK_DGRAM)。流式Socket是面向连接的,提供了一个有序、可靠、双向的字节流通信,它通常用于TCP服务应用;数据报式Socket是无连接的,它...

    python网络编程学习笔记(二):socket建立网络客户端

    协议家族一般表示TCP通信的SOCK_STREAM或者表示UDP通信的SOCK_DGRAM。因此对于TCP通信,建立一个socket连接的语句为:s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)对于UDP通信,建立一个socket连接的语句为...

    使用unix sock_domain的范例(高效的IPC通信方式)

    1. **创建Socket**:使用`socket()`函数创建一个socket,指定`AF_UNIX`作为地址族(sock_domain),以及适当的socket类型(如SOCK_STREAM或SOCK_DGRAM)。 2. **准备Socket地址**:使用`struct sockaddr_un`结构体...

    Linux Socket Programming

    套接字类型分为SOCK_STREAM和SOCK_DGRAM两种。SOCK_STREAM提供面向连接的、可靠的数据传输服务,通常使用TCP协议。SOCK_DGRAM提供无连接的、不可靠的数据报服务,使用UDP协议。这些不同的套接字类型为网络通信提供了...

    API_SOCKET.rar_API sock_API. socket_API_SOCKET_api socket_socket

    套接字分为两种类型:流式套接字(SOCK_STREAM,如TCP)和数据报套接字(SOCK_DGRAM,如UDP)。流式套接字提供面向连接的服务,确保数据的顺序和可靠性;而数据报套接字则是无连接的,适合于需要快速传输但对数据...

    Linux环境下基于Socket的网络通信

    Socket API主要提供了四种类型的Socket:SOCK_STREAM、SOCK_DGRAM、SOCK_RAW以及SOCK_RDM。其中,SOCK_STREAM提供了面向连接的可靠的字节流服务,它使用TCP(传输控制协议)来保证数据的完整性和顺序,适用于需要高...

    使用Socket进行本机通信源码

    Unix域套接字可以分为两种类型:流式(SOCK_STREAM,类似TCP)和数据报(SOCK_DGRAM,类似UDP)。 在`AF_UNIX`中,通信双方通过共享一个文件描述符来交换信息。这个文件描述符可以是一个路径名,也可以是一个匿名的...

    socket开发基础

    在Socket编程中,TCP和UDP对应于不同类型的Socket,即SOCK_STREAM和SOCK_DGRAM。SOCK_STREAM是面向连接的Socket,用于实现TCP协议;SOCK_DGRAM是无连接的Socket,用于实现UDP协议。开发者在使用Socket进行网络编程时...

    socket编程(源码)

    有两种:流式Socket(SOCK_STREAM)和数据报式Socket(SOCK_DGRAM)。流式是一种面向连接的Socket,针对于面向连接的TCP服务应用;数据报式Socket是一种无连接的Socket,对应于无连接的UDP服务应用。 Socket为了建立...

    基于QNX的Socket测试程序

    2. **套接字类型(Socket Type)**:如SOCK_STREAM对应TCP协议,提供面向连接、可靠的数据传输;SOCK_DGRAM对应UDP协议,提供无连接、不可靠的数据传输。 3. **协议(Protocol)**:在特定的地址家族和套接字类型下...

    socket 函数

    我们使用系统调用socket()来获得文件描述符: #include ...第二个参数是套接口的类型:SOCK_STREAM或 SOCK_DGRAM。第三个参数设置为0。 系统调用socket()只返回一个套接口描述符,如果出错,则返回-1。

Global site tag (gtag.js) - Google Analytics