`
alienchang
  • 浏览: 31556 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Socket 通讯的概念性过程

阅读更多
1.SOCKET 通讯TCP方式一般流程图

服务端                                                                             客户端
socket()                                                                           socket()            
       |                                                                                       |
       |-------------------------setsockopt()-----------------------|
       |                                                                                       |
   bind()                                                                             connect()
       |                                                                                       |
       |                                                                                       |
   listen()                                                                           recv()/send()/write()
       |
       |
  accept()
       |
       |
       |
recv()/send()/read()
setsockopt的可用level为SOL_SOCKET:
option为:SO_REUSEADDR  选项就是可以实现端口重绑定的
其他的选项可以使用也可以不用.

2.SOCKET 通讯UDP方式一般流程图

服务端                                                                             客户端
socket()                                                                           socket()            
       |                                                                                       |
       |-------------------------setsockopt()---------------------- |
       |                                                                                       |
   bind()                                                                          sendto()
       |                                                                                      
       |                                                                                    
recvfrom()
如果是广播,则
setsockopt的可用level为SOL_SOCKET:
option为:SO_BROADCAST  选项就是该SOCKET 是用于广播的.
sendto地址可以为:255.255.255.255 受限地址
                                netid.255.255  (B类地址)该网络号下所有子网
                                10.128.1.255 (B类地址)该1子网的广播
                                10.128.255.255 (B类地址)所有子网的广播

如果是多播,则
setsockopt的可用level为IPPROTO_IP:

IP_ADD_MEMBERSHIP: 加入一个多播组
IP_DROP_MEMBERSHIP: 离开一个多播组
IP_MULTICAST_IF: 指定外出多播数据报的外出接口
IP_MULTICAST_TTL: TTL数
IP_MULTICAST_LOOP: 是否禁止回馈,我的理解是一台机器是否可以接收到自己发送的多播数据报
struct ip_mreq 为IP_ADD_MEMBERSHIP的数据结构!
   多播地址为224.0.0.0.1~239.255.255.255
分享到:
评论

相关推荐

    很实用的 socket通讯工具

    Socket通讯是计算机网络编程中的一个核心概念,它提供了一种在不同进程或计算机间进行数据交换的方法。在本文中,我们将深入探讨“很实用的Socket通讯工具”这一主题,了解Socket的基本原理、如何使用以及其在实际...

    Socket通讯简单Demo

    Socket通讯是计算机网络编程中的一个基础概念,它允许两台或多台计算机通过网络进行通信。在本"Socket通讯简单Demo"中,包含了服务端(socketserver)和客户端(socketclient)两个部分,它们共同构建了一个简易的...

    android实现socket通讯

    总结,Android实现Socket通讯涉及创建和管理Socket对象,以及正确处理网络数据的读写。通过上述步骤,开发者可以构建基本的客户端-服务器通信模型,进一步扩展功能,如数据序列化、心跳机制、断线重连等,以满足各种...

    FANUC机器人Socket Message通讯设置及使用手册

    机器人通过Socket通讯可以将寄存器中的数据,按照特定的格式发送给上位机。例如,在指令规则中,机器人可以发送五个连续寄存器的值给上位机,格式如#100,200.123,-10.567,-20,0.005。 其次,手册介绍了适用于所有...

    Socket通讯包

    Socket通讯包是一个重要的编程工具,主要用于在客户端和服务器之间建立网络通信。Socket是TCP/IP协议族的一部分,提供了进程间通信(IPC)的能力,允许不同计算机上的应用程序通过网络进行数据交换。在本文中,我们...

    socket通讯框架例子

    Socket通讯框架是网络编程中的重要组成部分,特别是在C#开发中,它为开发者提供了低级别的网络通信接口,可以实现客户端与服务器之间的数据交换。本示例着重于如何利用Socket进行大文件传输、分页分包处理以及在高...

    PB 封装的SOCKET通讯组件

    在本案例中,"PB封装的SOCKET通讯组件"是使用PB进行封装,以实现基于SOCKET协议的网络通信功能。SOCKET是网络编程的基本接口,它允许应用程序通过TCP/IP协议进行数据交换,是跨平台、语言无关的通信方式。 首先,...

    Socket 通讯 经典

    在本文中,我们将深入探讨Socket通信的基本概念、工作原理以及如何使用Socket进行服务器与客户端的经典交互。 首先,Socket是应用层与传输层之间的一个抽象接口,它为应用程序提供了访问网络协议的能力,如TCP...

    SOCKET通讯侦听

    在这个过程中,我们将深入探讨SOCKET通讯的基础、侦听的过程以及如何通过这种方式提高网络安全性。 首先,让我们理解什么是SOCKET。在计算机科学中,SOCKET是一种进程间的通信机制,允许不同网络上的程序之间进行...

    安卓间socket通讯

    本文将详细讲解Android间Socket通讯的基础概念、实现步骤以及常见问题。 一、Socket基础 Socket是网络通信的一种接口,它提供了进程间通信(IPC)的能力,特别是在不同机器上的进程间。在Android中,我们可以使用...

    android socket通讯例子

    在客户端和服务器端的通信过程中,要确保正确关闭资源,如Socket、InputStream和OutputStream,以避免内存泄漏。例如,在完成通信后,可以使用`finally`块关闭它们: ```java try { // 通信操作... } finally { ...

    C socket通讯(Linux+window)

    本主题将深入探讨"C socket通讯",特别是在Linux和Windows操作系统中的应用。socket编程允许程序通过TCP/IP协议栈与其他设备进行数据交换,是构建网络服务和客户端应用程序的关键。 首先,我们来理解什么是socket。...

    服务器和客户端进程的简单SOCKET通讯

    本主题将深入探讨“服务器和客户端进程的简单SOCKET通讯”,帮助理解整个连接过程。 1. **Socket基础概念** - **Socket**:Socket在操作系统层面是一个数据接口,用于两个网络应用程序之间进行双向通信。它可以...

    Socket 通讯客户端和服务器端

    本文将深入探讨客户端和服务器端的Socket通讯原理、实现过程以及相关知识点。 首先,理解Socket的基本概念至关重要。Socket,又称为套接字,是网络编程中的一个接口,为进程间通信(IPC)提供了标准化的方法。在...

    C++解析xml源码/socket通讯案例

    本案例“C++解析xml源码/socket通讯案例”主要涉及两个核心部分:C++解析XML文件以及利用socket进行网络通信。 首先,关于C++解析XML: 1. **libxml库**:在C++中,常用libxml库来处理XML文档。libxml是一个功能...

    [C#通信二]C#.net同步异步SOCKET通讯和多线程总结

    【C#通信二】C#.NET同步异步SOCKET通讯和多线程总结 在C#.NET编程中,网络通信是应用开发中的一个重要部分。本文将深入探讨如何使用同步和异步方式通过SOCKET进行通信,以及如何结合多线程技术来实现高效的数据交换...

    powerbuilder开发的socket通讯

    下面将详细阐述如何在PowerBuilder中实现Socket通讯,以及涉及到的关键技术和步骤。 1. **Socket基础概念**: Socket是网络通信的一种接口,它提供了进程间的通信能力,允许不同计算机上的程序进行通信。在Power...

    C#Socket通讯例子.rar

    本示例“C# Socket通讯例子”旨在教你如何使用C#进行Socket客户端编程,以便与支持TCP协议的设备进行数据交换。 首先,让我们了解TCP(传输控制协议)的基本概念。TCP是一种面向连接的、可靠的、基于字节流的传输层...

    SuperSocket-master_Socket基于TCP、UDP

    Socket,也称为套接字,是网络编程中的基本概念,用于实现进程间通信(IPC)或跨网络的通信。在TCP/IP协议栈中,Socket是应用程序与网络协议交互的接口。Socket分为两种类型:流式Socket(TCP)和数据报Socket(UDP...

    Socket通讯,局域网聊天

    Socket通讯是计算机网络编程中的重要概念,主要用于实现进程间的通信,尤其在局域网聊天应用中扮演着核心角色。在本场景中,我们利用Socket来建立客户端与服务器之间的连接,从而实现在局域网内的实时聊天功能。 ...

Global site tag (gtag.js) - Google Analytics