本人记性不佳,看书健忘,以此笔记来记录看书后自己所知所想,已达到加深对tcp ip的理解。本笔记不过我看完书后自己所写的总结,权当是书后复习。
一.为什么会有tcp ip协议
我们知道中国有56个民族。各个民族有各自的语言,语言就形成了各个民族的障碍。大家都说自己的语言,谁也听不懂对方在讲什么,语言是各个民族之间那道鸿沟,谁也跨只是,照成每一个民族都是一个小团体,民族之间不能协同合作成为一个大团体。
普通话就攻克了这个问题,在民族之间那道鸿沟上建立了一道桥梁,让民族之间能够交流,避免了不必要的冲突。
tcp ip协议亦如此,计算机系统、硬件千差万别,要想让每台计算机互联互通,就得各个计算机共用一套同样的通信协议,tcp ip就起到了这个作用。让每台计算机互联起来,相互都能通信。组成一张大网“互联网”
二.tcp ip分层
tcp ip协议分为四层,每一层负责不同的通信功能。
数据链路层:指网络接口与驱动
网络层:网络传输中的信息。处理分组在网络传输中的活动,如ip协议。
ip协议是不可靠的,它不会确认报文是否传输成功,这一步操作须要上层的tcp协议来处理
传输层: 负责网络的传输,主要分为tcp和udp,udp是不可靠的,它仅仅负责把传输数据到目的网络设备,不会确认其是否被目的网络设备成功获取,报文的确认接受等操作须要应用层来处理。
而tcp是安全的,它包含确认接受与发送、超时重传等相关确认报文传输成功的操作。
应用层:应用程序,如http协议
在互联网中,我们能够把整个系统划分为端系统和中间系统:
端系统:互联网中两台主机既是端系统。应用层与传输层是应用于端系统中的端到端协议。仅仅有端系统才使用到应用层和传输层。
中间系统:中间的路由器。
网络层提供的是应用于中间系统的逐跳协议,端系统和中间系统都会使用到网络层。
三.互联网地址
每台主机都有一个ip地址标识它。甚至一台主机能够有多个ip。ip地址能够分为5类:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center">
四.域名系统
訪问互联网中的主机,我们能够通过主机的ip訪问,也能够通过主机域名来訪问。ip与主机域名是相应的
五.封装
两台主机之间进行通信,数据得经过协议栈的封装然后传输给目的主机:
1.应用程序组装好数据格式,然后发给内核协议栈。tcpip四层中也仅仅有应用层是在进程中运行的。其它三层都是在内核协议栈
2.协议栈收到应用层数据,对其加入tcp或udp头,tcp、udp头有个16位port号来表示应用层协议。
3.封装ip头,加入传输信息,ip头用8bit来表示上层是什么协议
4.封装以太网头,加入网络借口信息,用16bit来表示上层是什么协议
六.分用
当主机收到报文时,是由底向上解析报文,然后把应用层信息交给用户进程。
server一般分为并发server和反复server:
并发server:server仅仅要接到一个client请求便启动一个进程来处理。处理完后结束该进程。能够同一时候响应多个client的请求
反复server:server接到client请求立刻处理。可是在处理过程中。其它client的请求堵塞,仅仅要当前处理完成,才干响应下一个client