linux菜鸟学习之网络学习

  TCP/IP四层模型


     在菜鸟学习之浅入网络中已经将互联网的通信过程已经说了,但是进程与进程的联系还是没有说,例如我们是怎么访问百度的,怎么QQ聊天的。此内容也是本菜鸟的自己的理解,如果有不对的地方请大神指点。百度上已经把ISO/OSI 7层模型说的很透彻了。我就不画蛇添足了,就简单说下吧。




  在浅入网络中,我最多讲到了会话层,其实整个过程还有很多。

 先说说7层模型下面讲到的4层。1.物理层:加一些前导码,还有一大串“0”或者“1”表示一个报文要来了。。

2.数据链路层:加上原MAC和目标MAC首部(这个目标MAC是网关的MAC,网关再把这变成路由MAC。。。)

3.网络层:加上原IP和目标IP

4.传输层:原端口和目标端口



1.IP报文


 一个IP报文的内容就是这样的。(百度上全是官腔,我尽量用自己的理解)
版本号(4位)
0100(IPV4)
0110(IPV6)
IP报头长度(4位)
一个报头最长1111即15*4字节=60个字节,最短20字节(就是多少个4,每行4个字节)
服务类型(8位)
就好像是加急信和普通信一样。被定义为 PPP  D  T  R  C  0
(PPP):
000 普通(Routine)
001 优先 (Priority)
010 立即发送 (Immediate)
011 闪电般发送(Flash)
100 比闪电还要闪电(Flash Override)
101 CRI/TIC/ECP
110 网间控制(Internetwork Control)
111 网络控制(Network Control)

  D 时延:          0:普通    1:尽量小
  T 吞吐量:
  R 可靠性:
  M 传输成本:
  0  保留位 

IP包总长度:(16位)
所以一个IP包最大长度65535个字节

标记符:(16位)
有时候IP报太长了需要被分割。IP被切割后,为了表示不同的片来自同一个被切割的IP报文。标记符一样的就同          一个报文
偏移量:(13位)
标示符一样表示是同一个报文,偏移量则表示不同片的顺序。因为切开后,从新组合需要知道顺序
标志:(3位)
MF(More Fragment) 更多的片,表示被切割了。
DF(Don't Fragment) 没有被切割。不需要和其他片组合了。
TTL:(8位)
生存时间。在路由中被转的次数。在路由被转发n次后被丢弃。
协议:(8位)
上层的协议。(如TCP,UDP,ICMP,ICMP,IGRP,OSPF)
首部校验和:(16位)
为了确保信息传递正确
可选位():
数据():
包括上层协议的首部


逻辑地址的定义:

IPV4        0-255。
如  192.168.1.211

IPV4  有A,B,C,D,E五类地址:

A类:255.0.0.0        
0 000 0001 -  0 111 1111            0到127      127用于回环 。1-126
容纳主机 2^24-2  主机位全0:网络地址  主机位全0:广播地址
B类:255.255.0.0
10 00 0001 - 10 11 1111             128到191  64个B类 
C类:255.255.255.0
110 0 0001 - 110 1 1111             192到223  32个C类
D类
1110 0000 - 1110 1111

  • A类:0~127
  • B类:128~191
  • C类:192~223
  • D类:224~239,组播地址
  • E类:240~254,保留为研究测试使用
ICANN,INAN :来分配IP地址


私有地址(任何公司,区域都可以使用,但不能拿来上网的
A类10.0.0.0/8
B类172.16.0.0/16 - 172.31.0.0/16
C类192.168.0.0/24 - 192.168.255.0/24
这些地址不会再路由器上路由的,因为这些地址没法上互联网。


路由:
R1记录了去8.0 可以转给R2,去8.1可以转给R3 ,如果找不到就转给默认路由,具体要转给谁,就需要算法啦~~~
如果某个路由接在整个网络的骨干位置。那么就得将该路由的性能提高。将相近的小网络合并成一个大网络,汇聚,超网。是为了提高路由器性能。


      2.TCP(Transumission Control Protocol)



    TCP(Transmission Control Protocol):有连接的(类似于打电话)
     UDP(User Datagram Protocol):无连接的(类似于发短信)

dhcp,dns查询,tftp 用UDP
stmp,http,ftp,      用TCP
tcp 的  3次握手,4次挥手。

    

TCP报文段的首部格式:
4个字节为一行。

        源端口(16位):
        目标端口(16位):
序列号(32位):
确认号(32位):
首部长度(4位):
保留(6位):
URG(1位):紧急位
ACK(1位):校验位
PSH(1位):推送位     (不在缓冲中停留。赶紧从网卡中发出去)
RST(1位):重置位
SYN(1位):发起连接位
FIN  (1位):分手位
窗口(16位):接收方缓存中可容纳报文的个数
校验和(16位):
紧急指针(16位): URG位为1,紧急指针有效


  


    




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值