自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 原始套接字

用于tcp通信的流式套接字 用于udp通信报式套接字 特点是: 我们发送数据包只需要组应用层的数据报文,收到的数据包也只有应用层的数据 也就是说明,链路层,网络层,传输层的数据是由底层协议栈自动帮我们组的 如果想要自己从链路层,网络层,传输层到应用层组一个数据包,这个时候需要使用原始套接字 原始套接字(SOCK_RAW) 1、一种不同于SOCK_STREAM、SOCK_DGRAM的套接字,它实现于...

2020-03-20 19:26:33 167

原创 路由器与交换机

路由器(Router)又称网关设备(Gateway)是用于连接多个逻辑上分开的网络 所谓逻辑网络是代表一个单独的网络或者一个子网。当数据从一个子网传输到另一个子网时,可通过路由器的路由功能来完成 具有判断网络地址和选择IP路径的功能 作用是为了让数据包从一个子网到另一个子网通信用的,当数据包到达路由器的时候,暂存,在发送 当这个数据包到达路由器时,对这个数据包分析,过滤等等 交换机工作原理 1、转...

2020-03-18 19:28:22 136

原创 高并发(多路IO转接-扩展)

写tcp并发服务器的时候,并发的实现方式: 第一种: 阻塞等待 来了一个客户端就创建一个进程或线程去服务器,但是创建的线程或进程大多数时间都是处于休眠状态,所以这种并发的方式比较浪费资源 缺点: 浪费资源(内存) 第二种:非阻塞忙轮询 accept和read都不带阻塞,进程在不停的轮询,如果客户端没有发来消息,也没有新的客户端请求连接,这个时候程序在做无用功,浪费cpu的资源 第三种: 多路IO转...

2020-03-17 20:16:05 259

原创 心跳包

在TCP网络通信中,经常会出现客户端和服务器之间的非正常断开,需要实时检测查询链接状态。常用的解决方法就是在程序中加入心跳机制。 Heart-Beat线程 这个是最常用的简单方法。在接收和发送数据时个人设计一个守护进程(线程),定时发送Heart-Beat包,客户端/服务器收到该小包后,立刻返回相应的包即可检测对方是否实时在线。 该方法的好处是通用,但缺点就是会改变现有的通讯协议!大家一般都是使用...

2020-03-17 09:40:27 202

原创 广播

广播: 广播:由一台主机向该主机所在子网内的所有主机发送数据的方式 广播只能用UDP或原始IP实现,不能用TCP 广播的ip地址有两种: 1.定向广播地址 如: 192.168.1.0/24 --> 广播地址 192.168.1.255 2. 受限广播地址 255.255.255.255 这个地址在局域网内可以用来广播,但是这个地址不会被路由器转发 广播的用途: 单个服务...

2020-03-12 20:11:43 223

原创 TFTP

简单文件传输协议 写一个TFTP客户端: TFTP是基于UDP协议: 1 因为UDP是不可靠的,丢包不会重传,TFTP每次传输数据都需要对方给出ACK确认 2 传输文件时,需要一些选项,TFTP可以设置选项 数据传输模式: octet:二进制模式 netascii:文本模式 mail:已经不再支持 TFTP通信过程: TFTP通信过程总结(无选项) 1、服务器在69号端口等待客户端的请求 2、服务...

2020-03-11 20:22:04 329

原创 网络应用程序通信模式

B/S: 浏览器和服务器模式 只需要写服务器,客户端都是使用的浏览器 偷菜游戏,网页版的qq斗地址 优点: 维护简单,客户端不需要维护 不容易偷数据, 开发相对简单一些 不依赖环境 缺点: 客户端所有的计算,都需要服务器来完成,数据传输量大,客户端连接量太大服务器承受不了 B/S模式只适用于对性能要求较低的应用 C/S: 客户端和服务器模式 客户端和服务器都需要开发 英雄联盟,QQ,wechat...

2020-03-10 21:00:31 218

原创 网络分层

OSI: 开发系统互联模型(网络7层模型) TCP/IP 开发中的4层模型 第0层: 物理设备 网卡 交换机 集线器 路由器 物理层: 物理的特性( 双绞线的类型 传输速率 ) 数据链路层: 负责数据帧的收发 网络层: 通过ip地址判断数据包是否要接收,(最大可能的让每个数据包都能够到达目的主机) 传输层: 提供进程间的数据传送服务 会话层: 建立连接 保持连接 表示层: ...

2020-03-09 19:45:57 88

原创 GIT

Git历史 同生活中的许多伟大事件一样,Git 诞生于一个极富纷争大举创新的年代。Linux 内核开源项目有着为数众广的参与者。绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。到 2002 年,整个项目组开始启用分布式版本控制系统 BitKeeper 来管理和维护代码。 到 2005 年的时候,开发 BitKeeper 的商业公司同 Linux...

2020-03-06 18:57:19 187

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除