tcp ip协议笔记(1)——简单介绍
本人记性不佳,看书健忘,以此笔记来记录看书后自己所知所想,已达到加深对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
tcp ip协议笔记(1)——简单介绍的更多相关文章
- 【Linux网络基础】TCP/IP协议簇的详细介绍(三次握手四次断开,11种状态)
一.TCP/IP协议簇(DoD参考模型) 用于简化OSI层次,以及相关的标准. 传输控制协议(tcp/ip)簇是相关国防部DoD所创建的,主要用来确保数据的完整性以及在毁灭性战争中维持通信 是由一组不 ...
- OSI协议和TCP/IP协议笔记
1.OSI协议: 第7层应用层:OSI中的最高层.是用户与网络的接口.该层通过应用程序来完成网络用户的应用需求,如文件传输.收发电子邮件等.在此常见的协议有:HTTP,HTTPS,FTP,TELNET ...
- TCP/IP协议 (图解+秒懂+史上最全)
文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...
- TCP/IP协议网络编程以及UDP和TCP之传输协议
1.什么是TCP/IP协议? 网络编程协议有很多,目前应用最广泛的是TCP/IP协议(Transmission Control Protocal/Internet Protoal 传输控制协议/英特网 ...
- Python Web学习笔记之TCP/IP协议原理与介绍
HTTP.FTP.SMTP.Telnet等等协议,哦!那个HTTP协议啊就是访问网页用的那个协议啊然后那个······其实······你懂得,我们应该从实际来了解他,理解网络协议的作用与功能,然后再从 ...
- TCP/IP协议简单介绍
TCP/IP协议族总共分为四层,分别为: 应用层:应用层协议有Telnet(远程登入协议).FTP(文件传输协议).SMTP(简单邮件传送协议).SNMP(简单网络管理协议).HTT ...
- HTTP协议—— 简单认识TCP/IP协议
大学没读计算机专业,所以很多的专业知识都不知道.既然已经从事了IT这个行业,就势必要去了解下网络底层,虽然实际工作中这些东西用不到.高楼大厦,起于平川.不积跬步,无以至千里,不积小流,无以成江海.我现 ...
- TCP/IP 协议介绍
转自http://blog.jobbole.com/104886/ 一.TCP/IP 协议介绍 在介绍 HTTP 协议之前,先简单说一下TCP/IP协议的相关内容.TCP/IP协议是分层的,从底层至应 ...
- TCP/IP协议学习笔记
计算机网络基础知识复习汇总:计算机网络基础知识复习 HTTP协议的解析:剖析 HTTP 协议 一个系列的解析文章: TCP/IP详解学习笔记(1)-- 概述 TCP/IP详解学习笔记(2)-- 数据链 ...
随机推荐
- 令人惊叹的Npm工具包
1.http-server (简单搭建http服务器) 2.json-server (JSON服务器,快速搭建resful api接口) 3.cssnano (css多功能优化工具) PS:比uncs ...
- python学习--Django mvc框架简介
让我们一览 Django 全貌 urls.py 网址入口,关联到对应的views.py中的一个函数(或者generic类),访问网址就对应一个函数. views.py 处理用户发出的请求,从urls. ...
- 一个TensorFlow例子
一个TensorFlow的例子 import tensorflow as tf x = tf.constant(1.0, name='input') w = tf.Variable(0.8, name ...
- Emacs 安装与体验
Emacs 安装与体验 下载与安装 首先是下载最新的x64版本的Emacs. 将下载下来的文件解压到你喜欢的磁盘目录下,我选择的是C:\Program Files.放在D盘可能是更好的选择,因 ...
- C/C++、Java、Python谁是编译型语言,谁是解释型语言?
最近各大互联网公司线上笔试,编程题目里的编译器只支持C/C++.Java,甚至有的支持javaScrpit和Pascal,就是不支持Python.让一直以来用惯了Python的我直吐血,于是今天痛定思 ...
- log4j配置输出到数据库+自定义字段
Log4j.properties配置 log4j.rootLogger = info,stdout,D,E,A3 log4j.appender.Threshold=info ### 控制台输出### ...
- d3 比例尺
.domain([, ]) 定义域范围 .range([, ]) 值域范围 var scale = d3.scale.linear() .domain([, ]) .range([, ]); 将100 ...
- TroubleShoot:The context has expired (0×80090317)
网上搜了一下,服务器上的时间不正确,在SharePoint 设置中,可以通过管理中心设置下Time Zone 和服务器的时间上一致.
- 无密码登录Linux
配置主机A无密码登录主机B 主机A:192.168.1.110 主机B:192.168.1.111 先确保所有主机的防火墙处于关闭状态. 在主机A上执行如下: 1. $cd ~/.ssh 2. $ss ...
- Sphinx的GEO距离搜索 [转载]
近项目用sphinx做地理搜索,可是结果总是不对,明明很近却搜不到 结果检查sphinx源文件: static inline double sphSqr ( double v ) { return v ...