前言

本人记性不佳,看书健忘,以此笔记来记录看书后自己所知所想,已达到加深对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)——简单介绍的更多相关文章

  1. 【Linux网络基础】TCP/IP协议簇的详细介绍(三次握手四次断开,11种状态)

    一.TCP/IP协议簇(DoD参考模型) 用于简化OSI层次,以及相关的标准. 传输控制协议(tcp/ip)簇是相关国防部DoD所创建的,主要用来确保数据的完整性以及在毁灭性战争中维持通信 是由一组不 ...

  2. OSI协议和TCP/IP协议笔记

    1.OSI协议: 第7层应用层:OSI中的最高层.是用户与网络的接口.该层通过应用程序来完成网络用户的应用需求,如文件传输.收发电子邮件等.在此常见的协议有:HTTP,HTTPS,FTP,TELNET ...

  3. TCP/IP协议 (图解+秒懂+史上最全)

    文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...

  4. TCP/IP协议网络编程以及UDP和TCP之传输协议

    1.什么是TCP/IP协议? 网络编程协议有很多,目前应用最广泛的是TCP/IP协议(Transmission Control Protocal/Internet Protoal 传输控制协议/英特网 ...

  5. Python Web学习笔记之TCP/IP协议原理与介绍

    HTTP.FTP.SMTP.Telnet等等协议,哦!那个HTTP协议啊就是访问网页用的那个协议啊然后那个······其实······你懂得,我们应该从实际来了解他,理解网络协议的作用与功能,然后再从 ...

  6. TCP/IP协议简单介绍

    TCP/IP协议族总共分为四层,分别为:          应用层:应用层协议有Telnet(远程登入协议).FTP(文件传输协议).SMTP(简单邮件传送协议).SNMP(简单网络管理协议).HTT ...

  7. HTTP协议—— 简单认识TCP/IP协议

    大学没读计算机专业,所以很多的专业知识都不知道.既然已经从事了IT这个行业,就势必要去了解下网络底层,虽然实际工作中这些东西用不到.高楼大厦,起于平川.不积跬步,无以至千里,不积小流,无以成江海.我现 ...

  8. TCP/IP 协议介绍

    转自http://blog.jobbole.com/104886/ 一.TCP/IP 协议介绍 在介绍 HTTP 协议之前,先简单说一下TCP/IP协议的相关内容.TCP/IP协议是分层的,从底层至应 ...

  9. TCP/IP协议学习笔记

    计算机网络基础知识复习汇总:计算机网络基础知识复习 HTTP协议的解析:剖析 HTTP 协议 一个系列的解析文章: TCP/IP详解学习笔记(1)-- 概述 TCP/IP详解学习笔记(2)-- 数据链 ...

随机推荐

  1. eureka显示ip地址的参数

    eureka.instance.prefer-ip-address=trueeureka.instance.instance-id=${#spring.cloud.client.ipAddress}: ...

  2. 令人惊叹的Npm工具包

    1.http-server (简单搭建http服务器) 2.json-server (JSON服务器,快速搭建resful api接口) 3.cssnano (css多功能优化工具) PS:比uncs ...

  3. day01_05.数学运算符

    数学运算符 $zhang = 100; $lisi = 50; echo $zhang+$lisi; 答案:150 $zhang = 50; $lisi = 40; echo $zhang - $li ...

  4. Game on Tree

    D - Game on Tree Time limit : 2sec / Memory limit : 256MB Score : 1100 points Problem Statement Ther ...

  5. pat 1037

    如果你是哈利·波特迷,你会知道魔法世界有它自己的货币系统 —— 就如海格告诉哈利的:“十七个银西可(Sickle)兑一个加隆(Galleon),二十九个纳特(Knut)兑一个西可,很容易.”现在,给定 ...

  6. log4net配置分析

    appender   附加器 RollingFileAppender      滚动文件appender MaxSizeRollBackups      最大尺寸回滚 ConversionPatter ...

  7. Struts2的文件上传与下载

    <一>简述: Struts2的文件上传其实也是通过拦截器来实现的,只是该拦截器定义为默认拦截器了,所以不用自己去手工配置,<interceptor name="fileUp ...

  8. Kafka单机配置部署

    摘要:上节 学习了Kafka的理论知识,这里安装单机版以便后续的测试. 首先安装jdk 一.单机部署zk 1.1安装: tar -zxf zookeeper-3.4.10.tar.gz -C /opt ...

  9. POJ——3264Balanced Lineup(RMQ模版水题)

    Balanced Lineup Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 44112   Accepted: 20713 ...

  10. 深入浅出mysql全文随笔

    进入mysql :mysql -uroot -p 1.DDL(Data Definition Languages)语句:数据定义语言 2.DML(Data Manipulation Language) ...