
网络编程
MrWind灬
生当作人杰
展开
-
select, iocp, epoll,kqueue及各种I/O复用机制
转载 :出自http://www.cnblogs.com/xuxm2007/archive/2011/08/15/2139808.htmlselect, iocp, epoll,kqueue及各种I/O复用机制http://blog.youkuaiyun.com/heyan1853/article/details/6457362 首先,介绍几种常见的I/O模型及转载 2016-03-01 15:01:42 · 307 阅读 · 0 评论 -
HTTPS握手过程
HTTPS握手过程HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。具体是如何进行加密,解密,验证的,且看下图。1. 客户端发起HTTPS请求2. 服务端的配置采用HTTPS协议的服务器必须要有一套数字证书,可以是自己制作或者CA证书。区别就是自己颁发的证书需要客户端验证通过,才可以继续访问,而使用CA证书则...转载 2019-09-04 13:23:04 · 2445 阅读 · 0 评论 -
TCP/IP协议
TCP/IP协议在一定程度上参考了OSI的体系结构。OSI模型共有七层,从下到上分别是物理层、数据链路层、网络层、运输层、会话层、表示层和应用层。但是这显然是有些复杂的,所以在TCP/IP协议中,它们被简化为了四个层次:链路层以太网协议规定,接入网络的设备都必须安装网络适配器,即网卡,数据包必须是从一块网卡传送到另一块网卡。而网卡地址就是数据包的发送地址和接收地址,有了MAC地址以后,...转载 2019-09-04 12:51:17 · 374 阅读 · 0 评论 -
tcp: 为什么要三次握手和四次挥手 ? time_wait 出现在什么地方,有什么用?
TCP:TCP即传输控制协议,是一种面向连接的、可靠的、基于字节流的通信协议。简单来说TCP就是有确认机制的UDP协议,每发出一个数据包都要求确认,如果有一个数据包丢失,就收不到确认,发送方就必须重发这个数据包。为了保证传输的可靠性,TCP协议在UDP基础之上建立了三次对话的确认机制,即在正式收发数据前,必须和对方建立可靠的连接。TCP数据包和UDP一样,都是由首部和数据两部分组成,唯一不同...转载 2019-09-04 11:26:46 · 794 阅读 · 0 评论 -
正则表达式 之 IP段,CIDR 一篇就搞定
IP表示法: 除了点分十进制,还有 CIDR 表示法,比如:192.168.0.1/24子网划分里CIDR用的比较多: 可以参考子网划分的文章:https://blog.youkuaiyun.com/u012219045/article/details/60466352正则表达式如下:^(?:(?:[0-9]|[1-9][0-9]|1[0-9]{2}|...原创 2019-08-05 18:02:41 · 8394 阅读 · 2 评论 -
正则表达式 之 子网掩码mask 一篇就搞定
正则表达式:pattern = '^((128|192)|2(24|4[08]|5[245]))(\.(0|(128|192)|2((24)|(4[08])|(5[245])))){3}$'Python 函数例子:import redef check_mask(mask_str): pattern = '^((128|192)|2(24|4[08]|5[245]))...原创 2019-08-09 15:15:26 · 8390 阅读 · 2 评论 -
IOCP模型与网络编程
IOCP模型与网络编程一。前言: 在老师分配任务(“尝试利用IOCP模型写出服务端和客户端的代码”)给我时,脑子一片空白,并不知道什么是IOCP模型,会不会是像软件设计模式里面的工厂模式,装饰模式之类的那些呢?嘿嘿,不过好像是一个挺好玩的东西,挺好奇是什么东西来的,又是一个新知识啦~于是,开始去寻找一大堆的资料,为这个了解做准备,只是呢,有时还是想去找一本书去系统地学习一转载 2017-03-06 21:51:49 · 280 阅读 · 0 评论 -
IOCP编程(中)
上一篇主要谈了一些基本理念,本篇将谈谈我个人总结的一些IOCP编程技巧。 网络游戏前端服务器的需求和设计 首先介绍一下这个服务器的技术背景。在分布式网络游戏服务器中,前端连接服务器是一种很常见的设计。他的职责主要有: 1. 为客户端和后端的游戏逻辑服务器提供一个软件路由 —— 客户端一旦和前端服务器建立TCP连接以后就可以通过这个连接和后端的游戏服务器进行通讯,转载 2017-03-06 21:46:53 · 298 阅读 · 0 评论 -
IOCP编程小结(上)
前段时间接手了一个网络游戏前端连接服务器的开发工作,由于服务器需要在windows平台上部署,并且需要处理大量的客户端连接,因此采用IOCP来做为服务器端的编程模型就成了不二选择。虽然我对服务器开发并不陌生,但我一直以来对IOCP抱着不屑一顾的态度,感觉这个编程模型太过复杂,并不是一个良好的系统设计,所以一直没有用过。这回重新拿起来研究了一下,经过一个多月的研究和开发,目前服务器已经基本完成,即将转载 2017-03-06 21:41:46 · 232 阅读 · 0 评论 -
IOCP模型
IOCP模型 IOCP全称I/O Completion Port,中文译为I/O完成端口。IOCP是一个异步I/O的Windows API,它可以高效地将I/O事件通知给应用程序,类似于Linux中的Epoll。简介 IOCP模型属于一种通讯模型,适用于Windows平台下高负载服务器的一个技术。在处理大量用户并发请求时,如果采用一个用户一个线程的方式那将造成CPU转载 2017-03-06 20:12:01 · 293 阅读 · 0 评论 -
iocp原理
IOCP原理要想彻底征服IOCP,并应用好IOCP这个模型,首先就让我们穿越到遥远的计算机青铜器时 代(以出现PC为标志),那时候普通的PC安装的还是DOS平台,微软公司主要靠这个操作系统在IT界的原始丛林中打拼,在DOS中编写程序,不得不与很 多的硬件直接打交道,而最常操作的硬件无非是键盘、声显卡、硬盘等等,这些设备都有一个特点就是速度慢,当然是相对于PC平台核心CPU的速度而言,尤其转载 2017-03-06 20:09:11 · 638 阅读 · 0 评论 -
IOCP技巧
本篇将谈谈我个人总结的一些IOCP编程技巧。 网络游戏前端服务器的需求和设计 首先介绍一下这个服务器的技术背景。在分布式网络游戏服务器中,前端连接服务器是一种很常见的设计。他的职责主要有: 1. 为客户端和后端的游戏逻辑服务器提供一个软件路由 —— 客户端一旦和前端服务器建立TCP连接以后就可以通过这个连接和后端的游戏服务器进行通讯,而不再需要和后端的服务器再建转载 2017-03-05 13:07:46 · 581 阅读 · 0 评论 -
子网划分及子网掩码计算方法
一、子网掩码的概述及作用子网掩码是一个应用于TCP/IP网络的32位二进制值,每节8位,必须结合IP地址对应使用。 子网掩码32位都与IP地址32位对应,如果某位是网络地址,则子网掩码为1,否则为0。 子网掩码可以通过与IP地址“与”计算,分离出IP地址中的网络地址和主机地址,用于判断该IP地址是在局域网上,还是在广域网上。 子网掩码一般用于将网络进一步划分为若干子网,以避免主机过多而拥...转载 2017-03-05 12:59:35 · 10984 阅读 · 2 评论 -
IP头、TCP头、UDP头
IP数据包也叫IP报文分组,传输在ISO网络7层结构中的网络层,它由IP报文头和IP报文用户数据组成,IP报文头的长度一般在20到60个字节之间,而一个IP分组的最大长度则不能超过65535个字节。 下图为IP分组的报文头格式,报文头的前20个字节是固定的,后面的可变。 版本:占4位(bit),指IP协议的版本号。目前的主要版本为IPV4,即第4版本号,也有一些教育网和科研机构在使转载 2017-03-05 12:52:38 · 525 阅读 · 0 评论 -
直接用socket实现HTTP协议(下载专用)
从HTTP服务器上下载一个文件有很多方法,“热心”的微软提供了 WinInet 类,用起来也很方便。当然,我们也可以自己实现这些功能,通过格式化请求头很容易就能实现断点续传和检查更新等等功能 。本文附带的工程中有一个支持 HTTP1.1 协议,直接用 Socket 实现下载功能的 DLL,实现了以下功能:1.连接主机2.格式化请求头3.设置接收,发送超时4.接收并分转载 2017-03-05 12:41:46 · 2065 阅读 · 0 评论 -
http协议详解
HTTP简介HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信转载 2017-03-05 11:16:53 · 311 阅读 · 0 评论 -
http服务跟踪及调试工具
HTTP(Hyper Text Transfer Protocol)即超文本传输协议,是目前互联网行业使用最为广泛的一种网络协议,采用请求/响应模型。客户端向服务器发送一个请求,请求头包含请求的方法、URI、协议版本、以及包含请求修饰符、客户 信息和内容的类似于MIME的消息结构。服务器以一个状态行作为响应,相应的内容包括消息协议的版本,成功或者错误编码加上包含服务器信息、实体元信息以及可能的实体转载 2017-03-05 11:28:06 · 2286 阅读 · 4 评论 -
TCP 有序传输,拥塞机制,重传机制
通过怎样的方式来保证数据的顺序化传输?主机每次发送数据时,TCP就给每个数据包分配一个序列号并且在一个特定的时间内等待接收主机对分配的这个序列号进行确认,如果发送主机在一个特定时间内没有收到接收主机的确认,则发送主机会重传此数据包。接收主机利用序列号对接收的数据进行确认,以便检测对方发送的数据是否有丢失或者乱序等,接收主机一旦收到已经顺序化的数据,它就将这些数据按正确的顺序重组成数据流并传递...转载 2019-09-04 15:03:56 · 1986 阅读 · 0 评论