TCP/IP初识(一)
TCP/IP学习记录,如有错误请指正,谢谢!!!
什么是TCP/IP协议?
TCP/IP协议族分为四层(另一个名字是Internet协议族(Internet Protocol Suite)):链路层、网络层、运输层、和应用层,每一层各有不同的责任。在TCP/IP中,网络层和运输层之间的区别最为关键:网络层(IP)提供点对点的服务,而运输层提供端对端的服务。
分层图显示

- 链路层:也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。
- 网络层:也称作互联网层,处理分组在网络中的活动。网络层协议包括IP协议(网际协议), ICMP协议(Internet互联网控制报文协议),以及IGMP协议(Internet组管理协议)。
- 运输层:主要为两台主机上的应用程序提供端对端的通信。在TCP/IP协议族中,有两个互不相通的传输协议:TCP(传输协议)和UDP(用户数据报协议)。TCP为两台主机提供高可靠性的数据通信。UDP只是把称作数据报的分组从一台主机发送到另一台主机,并不保证该数据报能到达另一端。任何必需的可靠性必须由应用层来提供。
- 应用层: 负责处理特定的应用程序细节。几乎各种不同的TCP/IP实现都会提供下面这些通用的应用程序:
4.1 Telnet 远程登录
4.2 FTP 文件传输协议
4.3 SMTP 简单邮件传送协议
4.4 SNMP 简单网络管理协议
TCP/IP协议族中不同层次的协议

- IP是网络层上的主要协议,同时被TCP和UDP使用。
- ICMP是IP协议的附属协议,主要用来与其它主机或路由器交换错误报文和其它重要信息,但应用程序也有可能访问它,两个主要的诊断工具Ping和Traceroute使用了此协议。
- IGMP是Internet组管理协议,用来把一个UDP数据报多播到多个主机。
- ARP(地址解析协议)和 RARP(逆地址解析协议)是某些网络接口(如以太网和令牌环网)使用的特殊协议,用来转换IP层和网络接口层使用的地址。
互联网的地址分类
* 互联网上的每个接口必须有一个唯一的Internet地址(也称IP地址)。IP地址长32bit。主要分为5类不同的互联网地址格式:


域名系统
在TCP/IP领域中,域名系统(DNS: Domain Name System)是一个分布的数据库,由它来提供IP地址和主机名之间的映射信息。任何应用程序都可以调用一个标准的库函数来查看给定名字的主机的IP地址,系统还提供一个逆函数--给定主机的IP地址,可看所对应的主机名。大多数使用主机名作为参数的应用程序也可以把IP地址作为参数。
数据进入协议栈封装

UDP数据与TCP数据基本一致,唯一不同的是UDP传给IP的信息单元称作UDP数据报(UDP datagram),而且UDP的首部长为8个字节。由于TCP、UDP、ICMP、IGMP都要向IP传送数据,因此必须在IP首部加入某种标识,IP首部中存入一个长度为8bit的数据,称作协议域。6:TCP,17:UDP,1:ICMP, 2:IGMP。
应用编程接口
通常采用两种应用编程接口(API):socket和TLI(运输层接口: Transport Layer Interface),前者有时称作“Berkeley socket”, 表明它从伯克利版发展而来。后者起初由AT&T开发的,有时称作XTI(X/Open运输接口),以承认X/Open这个自己定义标准的国际计算机生产商所做的工作。XTI实际上是TLI的一个超集。
标准化过程
TCP/IP协议族事实上有四个小组在负责Internet技术
- Internet协会(ISOC: Internet Society)是一个推动、支持和促进Internet不断增长和发展的专业组织,它把Internet作为全球研究的基础设施。
- Internet体系结构委员会(IAB: Internet Architecture Board)是一个技术监督和协调的机构。它由国际上来自不同专业的15个志愿者组成,其职能是负责Internet标准最后的编辑和技术审核。IAB隶属ISOC.
- Internet工程专门小组(IEFE:Internet Engineering Task Force)是一个面向近期标准的组织,它分为9个领域(应用、寻径和寻址、安全等等)。IEFE开发成为Internet标准的规范。为帮助IEFE主席,又成立了Internet工程指导小组(IESG:Internet Engineering Steering Group)。
- Internet研究专门小组(IRIF:Internet Engineering Task Force)主要对长远的项目进行研究。IRTF和IETF都隶属于IAB。
TCP/IP初识(一)的更多相关文章
- 初识TCP/IP协议
初识TCP/IP协议 TCP/IP 全称是(Transmission Control Protocol / Internet Protocol),传输控制协议/网际协议.TCP/IP定义了电子设备(比 ...
- TCP/IP(一)之初识计算机网络
前言 在一段时间里,都很想知道一台电脑怎么跟另一台电脑通信的,我发送一个qq给女朋友,怎么准确的发送过去的,又是怎么接受消息的. 接下来一段时间给大家慢慢分享关于计算机网络的相关知识. 一.局域网.广 ...
- 计算机网络 0.初识Internet与TCP/IP协议
互联网,即因特网,Internet.互联网是一个世界范围的计算机网络.连接了世界上无数的计算设备,这些计算设备为PC.基于Linux的工作站,serverservers等等. 这些设备依据其作用不同可 ...
- TCP/IP,HTTP,Socket初识
在大学时候学过网络通信这一块,奈何已经还给老师,苍天饶过谁,该拾起来看看学学的还是要学,先简单了解了下这方面的知识,后续会继续通过看书来充实这方面的知识. 手机能够联网是手机底层实现了TCP/IP协议 ...
- TCP/IP网络协议初识
目录 一.什么是协议? 二.什么是TCP/IP协议? 三.TCP/IP为什么这么多协议? 四.TCP/IP协议为什么分层? 五.TCP/IP协议如何入门? 六.TCP/IP 的分层: 七.各协议层打包 ...
- TCP/IP 协议栈初识
原文:深入浅出 TCP/IP 协议栈 0. 简介 TCP/IP 协议栈是网络通信中一系列网络协议的综合,是核心骨架.它定义了电子设备接入因特网.以及数据在它们之间的传输方式,是一份标准.TCP/IP ...
- TCP/IP, WebSocket 和 MQTT
按照OSI网络分层模型,IP是网络层协议,TCP是传输层协议,而HTTP和MQTT是应用层的协议.在这三者之间, TCP是HTTP和MQTT底层的协议.大家对HTTP很熟悉,这里简要介绍下MQTT.M ...
- TCP/IP协议学习笔记
计算机网络基础知识复习汇总:计算机网络基础知识复习 HTTP协议的解析:剖析 HTTP 协议 一个系列的解析文章: TCP/IP详解学习笔记(1)-- 概述 TCP/IP详解学习笔记(2)-- 数据链 ...
- TCP/IP基础
TCP/IP 是用于因特网 (Internet) 的通信协议. 计算机通信协议是对那些计算机必须遵守以便彼此通信的规则的描述. 什么是 TCP/IP? TCP/IP 是供已连接因特网的计算机进行通信的 ...
随机推荐
- 如何定位 Node.js 的内存泄漏
基础知识 Node.js 进程的内存管理,都是有 V8 自动处理的,包括内存分配和释放.那么 V8 什么时候会将内存释放呢? 在 V8 内部,会为程序中的所有变量构建一个图,来表示变量间的关联关系,当 ...
- ORM(Object Relational Mapping)框架
ORM(Object Relational Mapping)框架 ORM(Object Relational Mapping)框架采用元数据来描述对象一关系映射细节,元数据一般采用XML格式,并且存放 ...
- 2 (自我拓展)部署花的识别模型(学习tensorflow实战google深度学习框架)
kaggle竞赛的inception模型已经能够提取图像很好的特征,后续训练出一个针对当前图片数据的全连接层,进行花的识别和分类.这里见书即可,不再赘述. 书中使用google参加Kaggle竞赛的i ...
- Windows IO 性能简单测试
转自:http://bbs.csdn.net/topics/360111289, 有改动. #include <windows.h> #include <stdio.h> #i ...
- mac phpstrom 环境配置
因为mac下自带php,但是没有环境(ini文件)所有需要自己重新安装一下: curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5 # 5.5 ...
- 并发包交换数据Exchanger
/** * * @描述: 用于实现两个人之间的数据交换,每个人完成一定的事务后想与对方交换数据,第一个先拿出数据的人一直等待 * 直到第二个人拿到数据 到来时,才能彼此交换数据. * @作者: Wnj ...
- MyEcplise使用---使用 MyEclipse 反转引擎生成数据库
使用 MyEclipse 反转引擎,生成数据库 步骤: 1. 新建 Database 连接 2. 新建web项目 temp 添加myeclipse hibernate 能力 3. Hibernate ...
- Hibernate、Mybatis与Spring Data JPA
从零开始集成Springboot+MyBatis+JPA https://www.jianshu.com/p/e14c4a6f6871 MyBatis 与Hibernate的区别 http://xhr ...
- January 16 2017 Week 3 Monday
In love, folly is always sweet. 恋爱中,干傻事总是让人感到十分美妙. Love can easily get us in over our heads, so it i ...
- 20140316 曼联VS利物浦,罗杰斯的小九九,当4312对上4231
一.预测的阵式!? 赛前看fourfourtwo,Whoscored的首发预测,楼主立刻意淫了阵式图,并且大言不惭在微博贴了当晚的热战区域(上图的左侧),并疑惑着,格伦·囧森打左后卫,那这……显然是逼 ...