网络
文章平均质量分 83
audience_fzn
这个作者很懒,什么都没留下…
展开
-
网络——IP地址和划分子网
IP地址1.基本概念IP地址就是给因特网上的每一个主机(或路由器)的每一个接口分配一个全世界唯一的标识符IP协议有俩个版本,IPV4和IPV6,我们一般用 IPV4,因为IPV4与IPV6不兼容,所以IPV6的推广效果不显著IPV4:1)IP地址是四个字节,三十二位整数 2)通常用点分十进制标识,每个点分割的每一个数字表示一个字节,范围是0~2552.IP地址的组成部分internet被各种...原创 2018-07-11 15:41:26 · 9799 阅读 · 1 评论 -
保证TCP可靠性的机制
一、确认应答机制在TCP中,当发送端的数据到达接收端的主机时,接收端的主机会返回一个已经收到该消息的通知,这个通知就是确认应答(ACK)每一个ACK报文中带有对应的确认序号,意思就是告诉发送端,我成功接受了你发的哪些数据,下一次你应该从哪里开始发序列号:TCP将每一个字节的数据都进行了编号,即为序列号。TCP是面向字节流的,它对每一个字节都进行了编号,比如发送端发送了一个1~100...原创 2018-07-27 13:10:43 · 1206 阅读 · 0 评论 -
DNS域名解析及ICMP浅析
DNS的背景DNS是一整套从域名映射到IP的系统TCP/IP中使用IP地址和端口号来确定网络上的一台主机的一个程序,但是IP地址不方便记忆,于是人们发明了一种叫主机名的东西,是一个字符串,并且使用hosts文件来描述主机名和IP地址的关系。IP地址是方便计算机处理的,而域名方便用户记忆操作DNS系统:一个组织的系统管理机构,维护系统内的每个主机名的IP和主机名的对应关系 如果...原创 2018-07-30 12:46:35 · 2464 阅读 · 1 评论 -
I/O多路转接,poll
poll函数的原型#include<poll.h>int poll(struct pollfd *fds,nfds_t nfds, int timeout)参数说明:fds:是一个poll函数监听的结构列表,每一个元素中,都包含了三个部分:文件描述符,监听事件集合,返回事件集合 nfds:fds数组的长度 timeout:表示poll函数的超时时间,单位时毫秒ti...原创 2018-07-29 23:30:14 · 180 阅读 · 0 评论 -
五种I/O方式及select
什么是IO?I/O是input/output的缩写,即输入输出端口。每个设备都会有一个专用的I/O地址,用户来处理自己的输入输出信息。在Linux中,一切皆文件,文件就是一串二进制流而已,不管是socket,还是FIFO,管道,终端都是文件,都是流,在信息交换的的过程中,我们都是对这些流进行数据的收发操作,简称I/O操作I/O操作具体分为俩部分等待数据就绪,也就是文件描述符上由事件就绪...原创 2018-07-29 22:39:24 · 440 阅读 · 0 评论 -
网络——TCP三次握手/四次挥手
在正常情况下,TCP都是要经过三次握手建立连接,四次挥手断开连接 一、TCP的连接状态1.LISTEN:监听客户端的TCP端口的连接请求2.SYN_SENT:再次发送连接请求后等待匹配的连接请求3.SYN_RECV:再收到和发送一个连接请求后等待对方连接请求的确认4.ESTABLISHED:代表一个打开的连接5.FIN_WAIT_1:等待远程TCP连接中断请求,或此案前...原创 2018-07-26 15:20:03 · 138 阅读 · 0 评论 -
UDP套节字编程的实现
服务器端因为UDP是面向数据报的,所以不能直接使用read(),write()来读写数据。而是要使用recvfrom(),sendto()来读写数据1.recvfrom()经socket接收数据#include<sys/types.h>#include<sys/socket.h>//函数原型ssize_t recvform(int sockfd,vo...原创 2018-07-29 15:47:42 · 149 阅读 · 0 评论 -
网络——IP协议头格式
网络层在复杂的网络环境中确定一个合适的路径(路由选择)网络层的目的是实现俩个端系统之间的数据透明传输,具体工能包括寻址,路由选择,连接的建立,保持和终止。IP协议:基本概念:主机:配有IP地址,但不进行路由控制的设备 路由器:配有IP地址,又能进行路由控制的设备 节点:主机和路由器的统称IP协议的功能寻址和路由(根据对方的IP地址,寻找出最佳的路径传输信息) 传递服...原创 2018-07-29 12:12:48 · 11728 阅读 · 0 评论 -
网络—— 数据链路层,MTU
数据链路层:用于俩个设备(同一种数据链路节点)之间进行传递一、认识以太网“以太网”不是一种具体的网络,而是一种技术标准,包含了数据链路层的内容,也包含了一些物理层的内容 以太网必须使用双绞线 以太网是当前最广泛的局域网技术以太网的帧格式:目的地址:6字节,网卡中的硬件地址,固定在网卡上的 源地址:6字节,网卡中的硬件地址(MAC) 类型:协议类型:IP,ARP,RARP...原创 2018-07-29 11:11:11 · 5245 阅读 · 0 评论 -
网络——HTTP协议即简单实现
应用层的功能:应用层负责应用程序之间的沟通来制定协议,通俗的来讲,就是应用层会借助TCP,UDP协议在各种各样的程序之间传递数据(邮件,文件等)这时候像应用层协议就可以规定这些数据的格式要满足什么样的。常见的应用层协议:基于UDP的应用层协议:DHCP:动态主机配置协议 DNS:域名解析协议基于TCP的应用层协议:SMTP:简单电子邮件传输协议 FTP:文件传输协议 T...原创 2018-07-28 23:58:03 · 566 阅读 · 0 评论 -
网络——ARP协议
ARP协议的作用:ARP:地址解析协议,是一个通过IP地址获取物理地址的协议。它并不是一个单纯的数据链路层协议,而是一个位于网络层与数据链路层之间的协议(一般认为ARP只适用于局域网)ARP协议建立了主机IP与MAC地址之间的映射在网络通信时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址,数据包首先是被网卡接收到再去处理上层协议,如果接收到数据包的硬件地址...原创 2018-07-28 18:18:06 · 332 阅读 · 0 评论 -
网络——UDP协议,TCP协议浅析
一、套接字1.套接字的概念 所谓的socket通常也称做套接字,用于描述IP地址和端口号,是一个通信链的句柄。 应用程序通常通过“套接字”向网络发起请求或应答,应用程序一般仅在同一类套接字间进行通信套接字分为:流套接字和数据报套接字...原创 2018-07-12 15:40:39 · 1288 阅读 · 0 评论 -
网络——网络套接字
1.套接字的概念 所谓的socket通常也称做套接字,用于描述IP地址和端口号,是一个通信链的句柄。 应用程序通常通过“套接字”向网络发起请求或应答,应用程序一般仅在同一类套接字间进行通信 在TCP/IP协议中,“IP地址+TCP或UDP端口号”唯一标识一个网络通讯中的一个进程。 在TCP协议中,建立连接的俩个进程各自由一个socket来标识,那么这俩...原创 2018-07-11 19:38:34 · 397 阅读 · 0 评论 -
TCP粘包问题
一、粘包问题首先要明确,粘包问题中的“包”,是指的应用层的数据包 在TCP的协议头中,没有如同UDP一样的“报文长度”字段,但是有一个序号字段 在传输层角度来看,TCP是一个一个报文过来的,按照序号拍好序,放在缓冲区中 在应用层的角度,看到的只是一串连续的字节数据,所以应用层不知道从哪个部分开始,是一个完整的数据包 从缓冲区来看,后一包的数据的头部紧挨着前一包数据的尾部,使得接...原创 2018-07-27 17:06:52 · 131 阅读 · 0 评论