首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏sofu456

    p2p协议(webrtc编译)

    p2p优势 多个客户端连接服务端,通过单一的服务端转发数据,服务端压力太大,所以使用p2p,以服务端为媒介,两个客户端做直连,服务端的压力会减小很多。 内网和外网隔离的限制,p2p在内网和外网使用的协议不同,p2p在外网和内网间会更为复杂。 网上有很多p2p的简单实现,大多是针对内网的 跨网段编程 tcp 在lan和wan之间通信,路由器(三层交换机,转发ip层数据)默认根据ip协议中的ip地址,查找路由表中的数据,并转发下一级,找到目标并回传回来 外网云服务器在配置了安全访问规则和设置防火墙允许后可以直接ping通外网不同网段的地址 路由跟踪 ping使用icmp协议测试目标电脑通断,限制在相同冲突域内(外网ping不同) tracert和 protocol unreachable 3 = port unreachable 4 = fragmentation needed and DF set 5 = source route failed ip协议中的

    2.9K30发布于 2020-11-03
  • 来自专栏PHPer 进击

    网络协议 15 - P2P 协议:小种子大学问

    后来,一种创新的,称为 P2P 的方式实现了我们的愿望。 P2P     P2P 就是 peer-to-peer。 而 Kedemlia 协议 就是一种著名的 DHT 协议。我们来基于这个协议来认识下这个神奇的 DHT 网络。      A 和 B 的每一位都不一样,所以相差 31,A 找到的朋友 C,不巧正好在中间,和 A 的距离是 16,和 B 的距离是 15; C 去自己朋友圈找,碰巧找到了 D,距离 C 为 8,距离 B 为 7; 这两种都是集中下载的方式,而 P2P 则换了一种思路,采用非中心化下载的方式; P2P 有两种。一种是依赖于 Tracker 的,也就是元数据集中,文件数据分散。 参考: 维基百科-DHT 网络词条; 维基百科-Kademlia 词条; 刘超 - 趣谈网络协议系列课;

    1.8K30发布于 2019-04-11
  • 来自专栏有价值炮灰

    P2P通信标准协议(三)之ICE

    P2P通信标准协议(二)中,介绍了TURN的基本交互流程,在上篇结束部分也有说到,TURN作为STUN协议的一个拓展,保持了STUN的工具性质,而不作为完整的NAT传输解决方案,只提供穿透NAT的功能 SDP ICE信息的描述格式通常采用标准的SDP,其全称为Session Description Protocol,即会话描述协议.SDP只是一种信息格式的描述标准,不属于传输协议,但是可以被其他传输协议用来交换必要的信息 ICE是一个用于在offer/answer模式下的NAT传输协议,主要用于UDP下多媒体会话的建立,其使用了STUN协议以及TURN协议,同时也能被其他实现了offer/answer模型的的其他程序所使用 RTP/RTCP协议在数据包中进行复用(而不是在端口上复用). ICE是使用STUN/TURN工具性质的最主要协议之一,其中TURN一开始也被设计为ICE协议的一部分.值的一提的是, 本文只是对这几种协议作了概述性的说明,而具体工作过程和详细的属性描述都未包含,因此如果需要根据协议来实现具体的应用程序

    2K11编辑于 2023-02-12
  • 来自专栏有价值炮灰

    P2P通信标准协议(四)之SIP

    在前面几篇文章中我们介绍了建立p2p通信的一般协议(簇),以及一种完整的NAT传输解决方案ICE, 但是对于多用户的通信情况,还有一些通用协议来实现标准化的管理,如之前讲过的SDP和SIP等,SIP(Session SIP同时也提供了注册函数以允许用户上传他们的当前地址供代理服务器使用.SIP协议运行在多个不同的传输协议之上. ---------->| | |<-------------- | 180 Ringing F6 | | | 180 Ringing F7 Content-Type: 消息体(message body)的格式, 如SDP信息则为"application/sdp”,关于SDP可以参考前一篇博客P2P通信标准协议(三)之ICE. 至此, P2P通信系列的介绍也就告一段落了. P2P的去中心化,一直是个很令人振奋的话题,无论是在信息技术上,还是在金融,政治上,都有无限潜力.

    1.7K20编辑于 2023-02-12
  • 来自专栏有价值炮灰

    P2P通信标准协议(一)之STUN

    前一段时间在P2P通信原理与实现中介绍了P2P打洞的基本原理和方法,我们可以根据其原理为自己的网络程序设计一套通信规则,当然如果这套程序只有自己在使用是没什么问题的。 可是在现实生活中,我们的程序往往还需要和第三方的协议(如SDP,SIP)进行对接,因此使用标准化的通用规则来进行P2P链接建立是很有必要的。 本文就来介绍一下当前主要应用于P2P通信的几个标准协议,主要有STUN/RFC3489,STUN/RFC5389,TURN/RFC5766以及ICE/RFC5245。 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 我本来打算一篇文章把P2P通信的所有协议都介绍完不过现在看来似乎篇幅过长了, 所以关于TURN和ICE就放在下一篇介绍好了。

    3K20编辑于 2023-02-12
  • 来自专栏有价值炮灰

    P2P通信标准协议(二)之TURN

    上一篇P2P通信标准协议(一)介绍了在NAT上进行端口绑定的通用规则,应用程序可以根据这个协议来设计网络以外的通信。 但是,STUN/RFC5389协议里能处理的也只有市面上大多数的Cone NAT(关于NAT类型可以参照P2P通信原理与实现),对于Symmetric NAT,传统的P2P打洞方法是不适用的。 上图中0x4001为信道号,即ChannelData message的头部中头2字节,值得一提的是信道号的选取有如下要求: 0x0000-0x3FFF : 这一段的值不能用来作为信道号 0x4000-0x7FFF 实例 在上一章也提到过,因为RFC是标准协议,因此实现上往往有良好的兼容性和拓展性.现存的开源P2P应用程序, 如果按照标准来设计,可以很容易与之对接.其中比较著名的就是PJSIP,PJSIP是一个开源的多媒体通信库 TURN协议因为是STUN的拓展,当然也沿袭了STUN的工具性质,只为穿越NAT提供方法,而不作为P2P通信的完整解决方案.一个比较适合研究的TurnServer源代码我也放到这里了,而客户端的实现则根据每个人的具体需求而不同

    2.3K30编辑于 2023-02-12
  • 来自专栏ffffffff0x

    工控协议:S7COMM协议分析(上)

    --- S7Comm S7Comm(S7 Communication)是西门子专有的协议,是西门子 S7 通讯协议簇里的一种。 S7 协议的 TCP/IP 实现依赖于面向块的 ISO 传输服务。 S7 协议被封装在 TPKT 和 ISO-COTP 协议中,这使得 PDU(协议数据单元)能够通过 TCP 传送。 S7Comm 以太网协议基于 OSI 模型,从 wireshark 协议分级可以看出排列。 S7Comm 协议包含三部分: Header Parameter Data 根据实现的功能不同,S7 comm 协议的结构会有所不同。 下一篇文章,我们将继续学习S7comm协议Userdata 协议拓展部分。 --- 本文作者 r0fus0d

    5.5K12发布于 2021-01-18
  • 来自专栏ffffffff0x

    工控协议:S7COMM协议分析(下)

    前言 在上一篇文章中,我们介绍了S7Comm协议的S7Comm Header和Job 和 Ack_Data机制。 本篇文章,我们将继续介绍S7Comm协议的Userdata 协议拓展并结合pcap流量包实际分析。 --- Userdata 协议拓展 UserData 用于编程/调试、读取 SZL、安全功能、时间设置,循环读取等。 读时间(Read clock); 请求 [13.png] 响应 [14.png] --- 总结 本文,我们分析了S7Comm协议的Userdata 协议拓展部分。 通过与pcap流量包的结合分析,可以更加直观的了解其原理和交互过程,学习S7Comm协议对于工控安全非常重要,在之后的文章里,我们还将继续学习modbus和Ethernet/IP协议相关内容。

    2.3K12发布于 2021-01-18
  • 来自专栏PHPer 进击

    网络协议 7 - UDP 协议:性善碰到城会玩

    基于 UDP 的“城会玩”的五个例子 城会玩 一:网页或 APP 的访问     网页和手机 APP 都是基于 HTTP 协议的,而HTTP 协议是基于 TCP 的,建立连接都需要多次交互,对于时延比较大的移动互联网来讲 “城会玩” 二:流媒体的协议     直播协议多使用 RTMP,这个协议就是基于 UDP 的。TCP 的严格顺序传输要保证前一个收到了,下一个才能确认。 Google 旗下的 Nest 建立 Thread Group,推出了物联网通信协议 Thread,就是基于 UDP 协议的。 “城会玩” 五:移动通信领域     在 4G 网络里,移动流量上网的数据协议 GTP-U 也是基于 UDP 的。因为移动网络协议比较复杂,而 GTP 协议本身就包含复杂的手机上线下线的通信协议。 参考: 百度百科-UDP 词条; 刘超-趣谈网络协议系列课;

    1.2K30发布于 2019-04-11
  • 来自专栏程序员

    P2P

    P2P没有绝对的服务器和客户端之分。连接的双方分别作为临时的服务器和客户端。P2P通信的双方还可能更换IP地址。 P2P的一个最为流行的应用是BT种子,相信各位老司机对BT种子和迅雷都不陌生吧! 这是一个文件分发协议P2P的出现使得服务器在处理文件传输的时候,能够减少服务器的负载。在P2P中,每个对等方能够向任何其他的对等方重新分发它收的的该文件的任何部分。 (断点续传) BT协议是一个非常复杂的协议。每个洪流都有一个基础的设施节点,称为“追踪器”。当一个对等方加入该洪流的时候,它向追踪器进行注册,并且周期性的通知洪流,它仍在。 而对P2P传输没有贡献。 P2P的应用现在已经非常多了,大家经常使用的迅雷去下载种子。 另外一个每天都在使用的应用QQ,它也广泛的使用了P2P技术。即时消息就是基于P2P的。

    3K10发布于 2019-05-25
  • 来自专栏mukekeheart的iOS之旅

    OC学习7——类别、扩展和协议

    () 3 @property(nonatomic, strong) NSString *color; 4 -(void) drive:(NSString *)name; 5 @end 6 7 All rights reserved. 7 // 8 9 #import <Foundation/Foundation.h> 10 11 @protocol Women <NSObject> All rights reserved. 7 // 8 9 #import <Foundation/Foundation.h> 10 11 @protocol Man <NSObject> 12 All rights reserved. 7 // 8 9 #import <Foundation/Foundation.h> 10 #import "Women.h" 11 #import " All rights reserved. 7 // 8 9 #import "SuperMan.h" 10 #define MAX_CACHE_LINE 10 11 12 @implementation

    1.1K60发布于 2018-02-27
  • 来自专栏瓜农老梁

    Nacos7# Distro协议增量同步

    引言 本文接着撸Distro协议,上文中分析了在Nacos server启动时会进行全量数据同步和数据校验,具体数据即客户端注册节点信息含命名空间、分组名称、服务名称、节点Instance信息等。 request.getGroupName(), request.getServiceName(), true); switch (request.getType()) { // 注解@7 , String.format("Unsupported request type %s", request.getType())); } } 注解@7

    1.5K31发布于 2021-07-14
  • 来自专栏用户1692782的专栏

    手撕RTSP协议系列(7)——PLAY

    a946c352dd3ad04cf9830d5e72ffb11e", uri="rtsp://192.17.1.63:554/", response="9ea6c2659d3bce8d129ca3549ecc7fbf

    3.1K51发布于 2020-10-30
  • 来自专栏用户1692782的专栏

    手撕rtmp协议细节(7)——createStream

    创建完RTMP连接之后就可以创建或者访问RTMP流,对于推流端,客户端要向服务器发送一个releaseStream命令消息,之后是createStream命令消息,对于拉流端,则要发送play消息请求视频资源。我们先来看看推流端的消息流程,当发送完createStream消息之后,解析服务器返回的消息会得到一个stream ID, 这个ID也就是以后和服务器通信的 message stream ID, 一般返回的是1,不固定。

    2.4K30发布于 2020-05-26
  • 来自专栏大数据那些事

    防火墙(7)——禁止具体协议

    (1)tcp 此时我们禁止的是ssh命令,而并不会禁止icmp协议,即ping命令 ? ? 此时能成功ping通 ? ? 无法ssh连接 (2)icmp ? ping不通 ?

    73520发布于 2020-11-11
  • 来自专栏Vegout

    P2P通信原理

    P2P 就是端到端 我发一条微信给你,这不是 P2PP2P 是这样: ? P2P 技术要解决的问题 目前使用的终端设备(如手机),绝大部分都仅仅拥有特定网络下的内网 IP,而处在不同内网环境中的设备并不能够使用内网 IP 直接进行通信。 同时,只有锥型 NAT 才能进行 P2P,原因是由 P2P 连接的建立过程决定的。 P2P 连接建立过程 P2P 连接的建立首先需要一个拥有公网 IP 的中间服务器 S,两个结点 P1 和 P2。 这样让我们没办法拿到隐藏在 NAT 后边内网设备的 NAT 入口,也就没办法进行 P2P 通信了。 P2P 也用到了一个服务器,跟微信一样。 但是不同的是,P2P 中的服务器只作为结点地址的中转站,而微信的服务器是数据的聚宝盆。P2P 让我们的数据仅通过 P2P 连接发送,而不经过任何第三方的服务器。

    5.7K10发布于 2020-05-07
  • 来自专栏剑指工控

    手把手教你手撸通讯协议(一) S7协议解析

    2、协议封装 以上图为例: 由于TCP协议需要各种校验、确认,涉及的知识点有点多,暂时图中以UDP协议为例,其实以太网的协议类似于俄罗斯套娃,从用户层的数据包,到传输层是加上了UDP在传输层的协议头 :UDPhdr,然后网络层再在这个帧上加上了一个ip协议头:iphdr;而后到链路层,又加上了ether_hdr协议头,最终通过物理层将数据转化成电平或者光信号传递出去。 3、数据解析 以下以西门子的S7协议为例,S7协议与上位机通讯主要基于可靠的TCP协议。以下包主要包含了从第五层到第七层的详细数据解析。 该层总共占4个字节: 版本号:0x03 预留:0x00 长度:0x001F COTP(第六层:表示层) 该层总共占3个字节: 长度:0x02 PDU类型(DT Data):0XF0 目标引用:0x80 S7Communication 该层总共占4个字节: 版本号:0x03 预留:0x00 长度:0x001D COTP(第六层:表示层) 该层总共占3个字节: 长度:0x02 PDU类型(DT Data):0XF0 目标引用:0x80 S7Communication

    7.4K21编辑于 2022-03-11
  • 来自专栏剑指工控

    通过S7协议实现S7-1200 与S7-300的通信

    1.概述 通过以太网可以实现S7-1200与S7-300连接通信。 下面会用一个实例来描述S7-300 如何与S7-1200建立通信连接。 192.168.0.8 192.168.0.18 192.168.0.100 图1: 实例网络拓扑图 S7 1200 与 S7-300 通过 S7通信的基本原理如下图所示: 图2:S7-300与S7 编程软件 STEP 7 Basic V10.5 • S7-300 编程软件 STEP 7 V5.4 + SP4 4.组态 4. 1 S7-1200 配置 • 使用STEP 7 Basic 创建项目“comS7300 S7-1200 的DB2.DBB16~DB2.DBB31中; 图19:S7-300调用PUT函数写入S7-1200数据 6.总结 在使用S7-300与S7-1200 建立S7 通信时,所能建立的最大连接数和通信任务是与

    2.3K30发布于 2021-11-09
  • 来自专栏liulun

    公司禁用用迅雷,禁用所有P2P协议的软件,自己写个断点续传的工具

    目前仅支持HTTP协议 下一步的工作是支持FTP协议 再下一步的工作是对原始URL进行智能分析 发此文以抗议像吉日兄这样的总监或者老板 public partial class Form1 : Form

    76410编辑于 2022-05-09
  • 来自专栏转载专栏

    CS BS P2P构架

    --个人理解P2P(peer-to-peer,点对点)架构,是一种新的网络架构,P2P架构的核心是每个节点既可以当客户端,又要充当服务器。P2P架构能力依赖于整个网络中所有参与者的计算能力和带宽。 浏览器与服务器进行通信,通过HTTP/HTTPS协议进行数据交换。服务器:运行在服务器端,处理来自浏览器的请求并生成响应。响应通常是HTML、CSS和JavaScript代码。2. 总结C/S模型适用于需要高性能、复杂用户界面的应用,客户端和服务器之间通常通过专用协议进行通信。B/S模型则更适用于需要广泛兼容和简化维护的应用,用户通过浏览器访问服务器上的应用程序。 应用场景文件共享(如BitTorrent)区块链和加密货币(如比特币)去中心化应用(DApps)示例技术BitTorrent协议:用于文件共享,通过P2P网络分发文件。 区块链技术:使用P2P网络维护去中心化的账本转载地址: linux系统编程-网络-tcp(29)_linux c tcpserver-CSDN博客

    75710编辑于 2025-01-22
领券