计算机网络
文章平均质量分 87
hemeinvyiqiluoben
这个作者很懒,什么都没留下…
展开
-
socket套接字在多线程发送数据时要加锁吗?
转自知乎问题:一条报文在1000字节到4000字节之间,数据量在每秒5000左右,多线程写套接字,要加锁吗?没有加锁会导致报文错乱吗?在网络编程的时候,报文不超过MTU是否就无需对套接字加锁?解答①:你连 UDP 还是 TCP 都没说。对于 UDP,多线程读写同一个 socket 不用加锁,不过更好的做法是每个线程有自己的 socket,避免 contention,可以用 SO_REUSEPORT...转载 2018-05-21 15:33:22 · 8917 阅读 · 0 评论 -
断点续传2
转自:https://www.cnblogs.com/wangzehuaw/p/5610851.html断点续传和断点下载都是用的RandomAccessFile, 它具有移动指定的文件大小的位置的功能seek 。断点续传是由服务器给客户端一个已经上传的位置标记position,然后客户端再将文件指针移动到相应的position,通过输入流将文件剩余部分读出来传输给服务器断点下载 是由客户端告诉服...转载 2018-05-21 14:47:56 · 224 阅读 · 0 评论 -
断点续传1
转自: https://blog.csdn.net/chinafe/article/details/1816845在7月份分别做了多线程下载和断点续传 ,但当时只是测试,用了大文件分块传输的方法 实现流程首次传输其流程如下1.服务端向客户端传递文件名称和文件长度2.跟据文件长度计算文件块数3.客户端将传输的块数写入临时文件(做为断点值)4.若文件传输成功则删除临时文件首次传输失败后将按以下流程进行...转载 2018-05-21 14:46:14 · 483 阅读 · 0 评论 -
网上找到的爬虫和反爬虫总结
爬虫策略:1、(反爬虫专用)代理池了。你们可以去淘宝看下,几十万的代理价值多少钱。我们就不谈到处都有的免费代理了。2、用python写的爬虫是最薄弱的,因为天生并不适合破解反爬虫逻辑,因为反爬虫都是用javascript来处理。3、爬去一个公司的数据时,如果PC的页面爬不到,试试H5页面。 因为这两个页面通常是两个部门做的4、检测爬到的数据是否是对方故意造假的数据:①、人工抽查; ②、他们...转载 2018-03-13 08:36:01 · 4548 阅读 · 0 评论 -
非网管和网管交换机区别
交换机可以分为网管交换机以及非网管交换机,而非网管交换机又称为傻瓜型交换机,不需要任何设置,插上网线即可。什么叫非网管交换机? 非网管交换机,是相对网管型交换机而言的。网管型交换机的数据,会通过简单网络管理协议(SNMP)来实现配置,SNMP协议是目前基于TCP/IP网络使用最广泛的网络管理协议,可以对数据的地址、端口、协议类型、服务等进行过滤,通常还拥有VLAN划分功能。转载 2018-01-16 18:09:39 · 3203 阅读 · 0 评论 -
交换机的级联、堆叠和集群
随着计算机数量的增加、网络规模的扩大,在越来越多的局域网环境中,交换机取代了集线器,多台交换机互连取代了单台交换机。在多交换机的局域网环境中,交换机的级联、堆叠和集群是3种重要的技术。级联技术可以实现多台交换机之间的互连;堆叠技术可以将多台交换机组成一个单元,从而增大端口密度和提高端口的性能;集群技术可以将相互连接的多台交换机作为一个逻辑设备进行管理,从而大大降低了网络管理成本,简化管理操转载 2018-01-16 17:48:29 · 2254 阅读 · 1 评论 -
无线网卡实现2台或者多台笔记本连接技巧
作者:佚名 字体:[增加 减小] 来源:互联网 时间:02-22 10:47:44 我要评论Windows XP Sp2 对无线这块之设置包括界面相对于有了比较大之改变,虽然不难尝试,但是还有几个要点,需要掌握,所以再给需要搞无线对连一个比较详细之图解吧。出差在外的朋友可以连机打魔兽了,被老板发现别找我就OK了 1、打开你之无线网络转载 2018-01-23 15:59:54 · 2659 阅读 · 0 评论 -
802.11 a/b/g/n/ac 是什么以及它们有什么区别
802.11 a/b/g/n/ac 是什么以及它们有什么区别首先802.11 是一种无线局域网标准。802.11 a/b/g/n/ac 都是由802.11 发展而来的。不同的后缀代表着不同的物理层标准工作频段和不同的传输速率,也就是说它们的物理层和传输速度不同。协议 频率 信号 最大传输速率802.11 2.4Ghz FHSS 或 DSSS 2Mps802.11a 5GHz O转载 2018-01-14 14:50:21 · 20352 阅读 · 1 评论 -
Linux下高并发socket,单机提供五十万连接
转自: https://blog.csdn.net/peng314899581/article/details/51907537?ref=myread引用《Linux网络编程》一个完整的Socket描述,五元组,{协议,本地地址,本地端口,远程地址,远程端口}当我们自己写客户端测试程序来测试我们的服务端程序性能的时候,经常会遇到连接量上不去的问题,大多都是停留在2万左右。如果我们的测试机器有限,要...转载 2018-06-01 15:22:51 · 1193 阅读 · 0 评论 -
浅谈DNS原理
转自: https://coderschool.cn/2007.html在介绍 DNS 前,先提供几个纯净无劫持,支持科学上网的 DNS:几个纯净的 DNS 。DNS是什么?DNS是"Domain Name System"的简称,翻译过来就是"域名系统"。DNS作用?网友们应该都知道,每天我们访问的各类网站都是通过其对应的域名进行访问,比如你现在访问我的博客,也是通过:http://codersc...转载 2018-07-04 20:05:07 · 288 阅读 · 0 评论 -
再次深入理解TCP网络编程中的send和recv
转自: https://blog.csdn.net/yusiguyuan/article/details/21439719 本篇我们用一个测试机上的阻塞socket实例来说明主题。文章中所有图都是在测试系统上现截取的。需要理解的3个概念1. TCP socket的buffer每个TCP socket在内核中都有一个发送缓冲区和一个接收缓冲区,TCP的全双工的工作模式以及TCP的流量...转载 2018-12-26 08:36:30 · 839 阅读 · 1 评论 -
小白都能看明白的VLAN原理解释
转自:http://network.51cto.com/art/201409/450885.htm VLAN翻译成中文是“虚拟局域网”。LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络。VLAN所指的LAN特指使用路由器分割的网络,也就是广播域。 为什么需要VLAN1. 什么是VLAN?VLAN(Virtual LAN),翻译成中文...转载 2018-11-08 16:40:38 · 828 阅读 · 0 评论 -
DDNS 学习
转自: https://blog.csdn.net/mika85489/article/details/50497171 摘要:对于我们这些没事就喜欢瞎捣鼓的人来说,想在公网中访问自己家(动态公网IP下)的服务器,那就必须要掌握DDNS这项技术。本系列博文将从一个小白初学者的角度来学习DDNS的原理和常用的配置方法。写在最前面的: 首先明确目的:我们要在公网中访问自己家(动态公...转载 2018-11-11 19:00:02 · 801 阅读 · 0 评论 -
STP--二层路由器的生成树协议
转自:http://blog.51cto.com/13402236/1973112 为什么要有生成树协议(spanning-tree protocol)? 在传统的交换网络中会产生故障(单点故障),导致主机通信失败。例如:sw3 Fas0/23 端口故障,则PC1/PC2 无法与PC3 通信 单点故障如何解决? 1.增加冗余链路 2.增加冗余设...转载 2018-11-09 10:51:45 · 1876 阅读 · 0 评论 -
tcp窗口滑动以及拥塞控制
转自: https://www.cnblogs.com/woaiyy/p/3554182.html转自:http://blog.chinaunix.net/uid-26275986-id-4109679.htmlTCP协议作为一个可靠的面向流的传输协议,其可靠性和流量控制由滑动窗口协议保证,而拥塞控制则由控制窗口结合一系列的控制算法实现。一、滑动窗口协议 关于这部分自己不晓得怎...转载 2018-10-07 10:23:41 · 189 阅读 · 0 评论 -
一张图说明CDN网络的原理
转自:https://blog.csdn.net/coolmeme/article/details/94687431.用户向浏览器输入www.web.com这个域名,浏览器第一次发现本地没有dns缓存,则向网站的DNS服务器请求;2.网站的DNS域名解析器设置了CNAME,指向了www.web.51cdn.com,请求指向了CDN网络中的智能DNS负载均衡系统;3.智能DNS负载均衡系统解析域名,...转载 2018-07-13 10:14:16 · 7304 阅读 · 0 评论 -
TCP send函数 阻塞发送数据详解
send函数 int send( SOCKET s, const char FAR *buf, int len, int flags ); 不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数据。 客户程序一般用send函数向服务器发送请求,而服务器则通常用send函数来向客户程序发送应答。 该函数的第一个参数指定发送端套接转载 2017-12-02 11:19:37 · 4420 阅读 · 0 评论 -
ssl双向认证和单向认证原理
转自:http://edison0663.iteye.com/blog/996526有朋友在搞一个项目,周末有聊到一些安全性的东西,很自然会想起https,但https究竟如何实施,其原理又是什么? 基于ssl,一般的应用都是单向认证,如果应用场景要求对客户来源做验证也可以实现成双向认证。 网上google一下: 为转载 2017-09-12 23:21:23 · 552 阅读 · 0 评论 -
HTTPS的工作原理和tcp握手机制
转自: http://www.cnblogs.com/ttltry-air/archive/2012/08/20/2647898.html1、HTTPS的工作原理 HTTPS在传输数据之前需要客户端(浏览器)与服务端(网站)之间进行一次握手,在握手过程中将确立双方加密传输数据的密码信息。TLS/SSL协议不仅仅是一套加密传输的协议,更是一件经过艺术家精心设计的艺术品,转载 2017-09-12 21:07:52 · 829 阅读 · 0 评论 -
计算机网络A、B、C、D、E类地址总结
如下图所示:原创 2015-08-28 14:41:15 · 2814 阅读 · 0 评论 -
P2P中的NAT穿越方案简介
1 P2P简介P2P即点对点通信,或称为对等联网,与传统的服务器客户端模式有着明显的区别,传统的服务器客户端模型如图2所示。P2P这一术语在不同的上下文环境里可能有不同的内涵,它可以指一种通信模式、一种逻辑网络模型、一种技术、甚至一种理念。在P2P网络中如图1所示,所有通信节点的地位都是对等的,每个节点都扮演着客户机和服务器双重角色,节点之间通过直接通信实现文件信息、处理器运算能力、转载 2015-08-28 16:08:58 · 535 阅读 · 0 评论 -
TCP/IP 相关帧头格式图
7、IP帧格式8、UDP帧格式转载 2017-03-21 15:30:41 · 2356 阅读 · 0 评论 -
P2P,UDP和TCP穿透NAT
1. NA转自:http://blog.csdn.net/leisure512/article/details/4900191简介NAT(Network Address Translation ,网络地址转换) 是一种广泛应用的解决IP 短缺的有效方法, NAT 将内网地址转和端口号换成合法的公网地址和端口号,建立一个会话,与公网主机进行通信。1.1. NAT 分类NAT转载 2017-04-20 12:31:23 · 334 阅读 · 0 评论 -
DNS服务器工作原理剖析
11111111原创 2017-04-05 21:18:10 · 423 阅读 · 0 评论 -
Socket中阻塞与非阻塞,同步与异步
简单点说: 阻塞就是干不完不准回来, 非阻塞就是你先干,我先看看有其他事没有,完了告诉我一声。 我们拿最常用的send和recv两个函数来说吧。比如你调用send函数发送一定的Byte,在系统内部send做的工作其实只是把数据传输(Copy)到TCP/IP协议栈的输出缓冲区,它执行成功并不代表数据已经成功的发送出去了,如TCP/IP协议栈没有足够的可用缓冲区来保存你Copy过来的数据的话,这时候就转载 2017-03-29 21:15:25 · 290 阅读 · 0 评论 -
Java——多人聊天室(基于TCP的网络编程——Socket)
转自: http://blog.csdn.net/qingsatianxia/article/details/50074821服务端源代码:import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.I转载 2017-03-29 20:08:21 · 1848 阅读 · 1 评论 -
TCP的状态 (SYN, FIN, ACK, PSH, RST, URG)
转自:http://www.cnblogs.com/azraelly/archive/2012/12/25/2832393.html在TCP层,有个FLAGS字段,这个字段有以下几个标识:SYN, FIN, ACK, PSH, RST, URG.其中,对于我们日常的分析有用的就是前面的五个字段。 它们的含义是:SYN表示建立连接,FIN表示关闭连接,转载 2017-03-21 08:01:27 · 265 阅读 · 0 评论 -
arp协议的工作过程
地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。工作流程如下:主机A转载 2017-02-18 20:17:59 · 19225 阅读 · 1 评论 -
二层交换机,三层交换机及四层交换机的区别
转自: http://baike.baidu.com/link?url=IkGkPikbXxaT8PWG5tqDhSr384vhBlFegy3USC5OAaBBImENSAjc4Xu7armrF23aglPHkP94fZuh_3_73sIN-gW6IVMj59_-ndk-rQQ34wrE6pfUvxIiTXSDRGazyNej二层交换二层交换技术的发展比较成熟,转载 2017-04-20 15:37:54 · 587 阅读 · 0 评论 -
CAN协议,系统结构和帧结构
转自:http://www.cnblogs.com/pejoicen/p/3986587.htmlCAN:Controller Area Network,控制器局域网是一种能有效支持分布式控制和实时控制的串行通讯网络。CAN-bus: Controller Area Network-bus,控制器局域网总线技术 CAN总线系统结构CA转载 2017-08-15 11:13:00 · 2606 阅读 · 1 评论 -
CAN数据格式
转自:http://blog.csdn.net/new_eggs/article/details/90920351.名词1)显性和隐性 显性-0 隐性-1(diff=0) 2)数据帧、远程帧、错误帧、过载帧、帧间隔 数据帧:用于发送节点向接收节点传送数据的帧 远程帧:用于接收节点向具有相同ID的发送节点请求数据的帧 错转载 2017-08-15 11:14:04 · 1959 阅读 · 0 评论 -
BT原理分析2
转自:http://blog.csdn.net/it_man/article/details/6602771BitTorrent协议。BT全名为BitTorrent,是一个p2p软件,你在下载download的同时,也在为其他用户提供上传upload,因为大家是“互相帮助”,所以不会随着用户数的增加而降低下载速度。下面是一般用ftp,http等分享流程:转载 2017-06-26 14:44:44 · 456 阅读 · 0 评论 -
BT下载原理简介
1. BT下载原理简介BT是一种用来进行文件下载的共享软件(不是“变态”),全名叫"BitTorrent"。BitTorrent是一个多点下载的源码公开的P2P软件,使用非常方便,就像一个浏览器插件,很适合新发布的热门下载。其特点简单的说就是:下载的人越多,速度越快 。 一般来讲,下载是把文件由服务器端传送到客户端,例如FTP,HTTP,PUB等等。工作原理如下图:但是转载 2017-06-26 14:27:58 · 28541 阅读 · 3 评论 -
IMAP和POP3有什么区别?
POP3协议允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作(如移动邮件、标记已读等),不会反馈到服务器上,比如通过客户端收取了邮箱中的3封邮件并移动到其他文件夹,邮箱服务器上的这些邮件是没有同时被移动的 。而IMAP提供webmail 与电子邮件客户端之间的双向通信,客户端的操作都会反馈到服务器上,对邮件进行的操作,服务器上的邮件也会做相应的动作。同时,IMAP像转载 2017-06-22 08:39:51 · 1607 阅读 · 0 评论 -
CDN(内容分发网络)技术原理
转自:http://kb.cnblogs.com/page/121664/ 1. 前言 Internet的高速发展,给人们的工作和生活带来了极大的便利,对Internet的服务品质和访问速度要求越来越高,虽然带宽不断增加,用户数量也在不断增加,受Web服务器的负荷和传输距离等因数的影响,响应速度慢还是经常抱怨和困扰。解决方案就是在网络传输上利用缓存技术使得Web服务转载 2017-06-20 09:08:15 · 525 阅读 · 0 评论 -
java socket - tcp 网络聊天室
服务端:import java.io.*;import java.net.*;import java.util.*;public class ChatRoomServerExec {private static ArrayList alsocket = new ArrayList();private static Socket socketMain = null;原创 2017-05-08 09:10:05 · 502 阅读 · 0 评论 -
java socket 服务器代码 自动接收文件并存储服务器 - 服务器多线程支持和多个客户端同时通信:
public static void main(String[] args) {try{ServerSocket ss=new ServerSocket(666);ss.setSoTimeout(0);System.out.println("accept超时时间设置为: "+ss.getSoTimeout());int iAccCount=0;while(true){S原创 2017-05-05 19:46:55 · 655 阅读 · 0 评论 -
子网划分标准场景
转载 2016-03-24 13:38:10 · 1686 阅读 · 0 评论