学习计算机网络之tcp/ip(1)

计算机网络的基本概念

OSI概念模型
TCP/IP协议
网络设备:网关 网桥(两层交换机) 路由器(三层交换机)中继器

tcp/ip协议结构

应用层-传输层-网络层-数据链路层-物理层

tcp/ip数据报文封装流程

应用程:数据+传输层:tcp头(端口号,目标端口号)+网络层:ip头(目标ip,源ip,上层协议)+数据链路层:以太网首部(目标mac地址,源mac地址)+以太网类型+fcs循环冗余校验码

tcp/ip数据报文接收流程

数据链路层首先判断mac地址是否为自己的,不是则丢弃,是则根据以太网类型则转交给网络层
判断是否于当下自己的ip一致,是则根据上层协议类型转交给上层,不是则借助路由控制表再次封装好转发。
如果tcp模块得倒数据包首先做数据校验,再根据目标端口号转交给应用程序,同时给发送端发送确认消息。
应用程序根据对应协议解析内容,并发送正确或错误的响应。

ipv4地址

32位二进制地址:网络号+主机号
a类地址:0开头,前一个字节为网络名
b类地址:10开头,前两个字节为网络名
c类地址:110开头前三个字节为网络名
d类地址: 1110开头,全部为网络名 无主机地址
注意:主机名不能全0或者全1,全1表示广播地址

dns服务

将域名解析为ip地址的服务
一个完整域名分为好多个部分,从左往右为主机名,低级域名,高级域名。。。
请求dns服务的过程大概是,请求最近的域名服务器,解析请求域名,如果不认识,就请求根域名服务器,然后向下依次请求低级的域名服务器直到得倒ip解析结果。dns服务器会将新获得的信息作缓存

tcp和udp

tcp是面向连接的可靠的字节流协议,其具有以下特点:
三次握手 四次挥手 序号标志 流控制 和拥塞控制
三次握手过程:客户端请求syn=1 seq=x,服务器接收后syn=1 ack=x+1 seq = y,客户端 ack = y+1 握手完成
为什么要三次不能两次:为了确保双方的收发能力都没有问题,假设只有两次,服务器端不能确认客户端的收消息能力。并且对于客户端的失效请求问题,服务器端会需要为这个请求继续开辟资源。
四次挥手:fin=1 seq=x =>ack=x+1 seq=y =>fin=1 seq=z=>ack=z+1
为什么要四次,因为服务器还在不断的推送数据,当客户端发出请求的时候服务器的响应并不一定发送完毕因此需要在发送完毕后再发一个
四次挥手后发起端需要等待额外的2msl(报文寿命)才能关闭连接,因为很有可能服务器端没有正常关闭,因而再次发出请求。
流控制的实现,使用服务器响应消息中携带的关于缓存窗口大小的信息来重新安排客户端的窗口大小。
拥塞控制的实现,使用拥塞窗口做慢启动,一点点的增加拥塞窗口的大小

应用层协议

应用层协议是利用下层协议提供的服务,为了实现某种特定的应用功能而设计的协议
http是用于web应用的协议,主要方法有get post head delete put trace
具体关于http的内容见学习计算机网络之tcp/ip(2)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值