首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏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 协议:小种子大学问

    第二种方式就是是通过 FTP(文件传输协议)。FTP 采用两个 TCP 连接来传输一个文件。 控制连接。服务器以被动的方式,打开众所周知用于 FTP 的端口 21,客户端则主动发起连接。 后来,一种创新的,称为 P2P 的方式实现了我们的愿望。 P2P     P2P 就是 peer-to-peer。 而 Kedemlia 协议 就是一种著名的 DHT 协议。我们来基于这个协议来认识下这个神奇的 DHT 网络。      这两种都是集中下载的方式,而 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协议运行在多个不同的传输协议之上. SIP协议结构 SIP是一个分层的协议,这意味着其行为由一系列同级但独立的段(stage)描述. 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。 STUN是一个C/S架构的协议,支持两种传输类型。 我本来打算一篇文章把P2P通信的所有协议都介绍完不过现在看来似乎篇幅过长了, 所以关于TURN和ICE就放在下一篇介绍好了。

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

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

    上一篇P2P通信标准协议(一)介绍了在NAT上进行端口绑定的通用规则,应用程序可以根据这个协议来设计网络以外的通信。 但是,STUN/RFC5389协议里能处理的也只有市面上大多数的Cone NAT(关于NAT类型可以参照P2P通信原理与实现),对于Symmetric NAT,传统的P2P打洞方法是不适用的。 因此为了保证通信能够建立,我们可以在没办法的情况下用保证成功的中继方法(Relaying),虽然使用中继会对服务器负担加重,而且也算不上P2P,但是至少保证了最坏情况下信道的通畅,从而不至于受NAT类型的限制 实例 在上一章也提到过,因为RFC是标准协议,因此实现上往往有良好的兼容性和拓展性.现存的开源P2P应用程序, 如果按照标准来设计,可以很容易与之对接.其中比较著名的就是PJSIP,PJSIP是一个开源的多媒体通信库 TURN协议因为是STUN的拓展,当然也沿袭了STUN的工具性质,只为穿越NAT提供方法,而不作为P2P通信的完整解决方案.一个比较适合研究的TurnServer源代码我也放到这里了,而客户端的实现则根据每个人的具体需求而不同

    2.3K30编辑于 2023-02-12
  • 来自专栏小雨的CSDN

    传输层TCP协议十大主要特性(7-8) —— 延迟应答 捎带应答

    背景:还是拿水果店老板进货的例子,假如补货的人来问水果店老板,什么时候需要补货,老板说晚上再给你发微信。那么这种情况下,水果店老板会在白天继续卖出去一些水果,晚上再跟补货人说要多少水果,就可以达到剩余空间最大利用

    60520编辑于 2022-10-26
  • 来自专栏以终为始

    7-8 Left-pad (20 分)

    7-8 Left-pad (20 分) 根据新浪微博上的消息,有一位开发者不满NPM(Node Package Manager)的做法,收回了自己的开源代码,其中包括一个叫left-pad的模块,就是这个模块把

    63810编辑于 2023-03-09
  • day 7-8 GEO数据挖掘

    数据从哪里来:GEO NHANES(临床) TCGA ICGC CCLE SEER(临床

    79810编辑于 2025-08-15
  • 来自专栏刷题笔记

    7-8 阅览室 (20 分)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/shiliang97/article/details/99688636 7-8 阅览室 (20 分) 天梯图书阅览室请你编写一个简单的图书借阅统计程序

    77510发布于 2019-11-08
  • 来自专栏程序员

    P2P

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

    3K10发布于 2019-05-25
  • 来自专栏刷题笔记

    7-8 堆栈模拟队列 (25 分)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/shiliang97/article/details/97869472 7-8 堆栈模拟队列 (25 分) 设已知有两个堆栈S1和S2,请用这两个堆栈模拟出一个队列

    1.3K20发布于 2019-11-08
  • 来自专栏萌海无涯

    centos 7-8重置root密码

    引导至GRUB菜单并进入编辑模式。使用箭头导航至通常从中引导 Centos 7 Linux系统的菜单项。按下e以开始编辑所选菜单项。

    2K10发布于 2021-02-24
  • 来自专栏ReganYue's Blog

    【PTA】7-8 到底有多二 (15分)

    一个整数“犯二的程度”定义为该数字中包含2的个数与其位数的比值。如果这个数是负数,则程度增加0.5倍;如果还是个偶数,则再增加1倍。例如数字-13142223336是个11位数,其中有3个2,并且是负数,也是偶数,则它的犯二程度计算为:3/11×1.5×2×100%,约为81.82%。本题就请你计算一个给定整数到底有多二。

    85230发布于 2021-09-16
  • 来自专栏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
  • 来自专栏刷题笔记

    7-8 汉诺塔的非递归实现

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 点这里 7-8 汉诺塔的非递归实现 借助堆栈以非递归(循环)方式求解汉诺塔的问题(n, a, b, c),即将N个盘子从起始柱(标记为“a”)通过借助柱(标记为“b”)移动到目标柱(标记为“c”),并保证每个移动符合汉诺塔问题的要求

    1.2K10发布于 2019-11-08
  • 来自专栏ReganYue's Blog

    【PTA】7-8 显示菱形 (10point(s))

    请编写函数,输入菱形的行数和组成菱形的字符,输出对应的菱形图像。 输入样例 5 $ 输出样例 $ $$$ $$$$$ $$$ $ 要求:若行数小于等于 0,则输出 None;若行数是偶数,则输出Error。 #include int main() { int n; char c; scanf("%d %c",&n,&c); if(n<=0) printf("None"); else if(n%2==0) printf("Error"); else { int m=n/2+1;

    43620发布于 2021-09-16
  • 来自专栏liulun

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

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

    76410编辑于 2022-05-09
  • 来自专栏刷题笔记

    【未完成】7-8 社交集群 (30 分)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/shiliang97/article/details/102727534 7-8 社交集群 (30 分) 当你在社交网络平台注册时,一般总是被要求填写你的个人兴趣爱好

    58200发布于 2019-11-07
  • 来自专栏转载专栏

    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
领券