关于TCP/IP以及网络的一些小科普

关于TCP/IP通讯我从以下四个点来进行介绍.
1.宏观上网络的分类,和具象的网络的模型。
2.互联网的发展。
3.端口和IP。
4.TCP/IP以及Socket通信。

第一点
1)关于网络的分类(宏观)
按照网络规模和范围可以简单划分为:
局域网(LAN)
都市网(MAN)
广域网(WAN)

按照网络拓扑结构可以划分为:
星型网络,总线网络,环线网络,树形网络,星型环线网络等。
但是其实关于网络的分类还有很多,比如按照数据交换方式可分为线路交换网络、报文交换网络和分组交换网络。嗯再比如有些网络的管理者对于网络的控制非常关心,所以还可以分成集中式网络、分散式网络和分布式网络这些等等。除此之外还有总线啊,点对点传输网络啊这些就不需要一一列举了。如果是初学网络IO这些也不需要这些,只需要对网络的分类有个大致的概念就可以了。
2)OSI七层网络模型(OpenSystems Interconnection楼主的英语实在是太渣了)(微观)
OSI网络模型现在来说是有点过时了,因为伟大的TCP/IP这些报文协议出现了,这个后面再说。先来介绍下OSI七层网络模型。

OSI七层网络模型从上至下分别是
7.应用层
6.表示层
5.会话层
4.传输层
3.网络层
2.数据链路层
1物理层
粗略的介绍下各层的作用(这个楼楼也翻阅了资料,大二学的都还给老师了,罪过)
7.应用层:主要是一些终端的应用,相当于提供了用户接入网络的接口。
6.表示层:能完成一些特定的功能,比如数据加密就是在这一层完成的。
5.会话层:通过传输层建立数据传输的通路,注要作用是维持系统之间的会话链接。
4.传输层:七层模型中最重要的一层了,这一层数据的单位称为数据段。这一层定义了一些传输数据的协议(例如我们要学的TCP)和端口号。主要是将从下层接收的数据进行分段和传输,到达目的地址后再进行重组。
3.网络层:这一层会用到IP这类的协议,负责对子网间的数据包进行路由选择。
2.数据链路层:承上启下,完成网络层和物理层的沟通。
1.物理层:数据以比特流的形式传播。为上层协议提供了一个传输数据的物理媒体,诸如网线的接口类型、光纤的接口类型、各种传输介质等等。

第二点,互联网的发展
这一段就是开始说故事了,既然是说故事就不能保证非常的细致了。
大体上互联网的发展分成三段:
第一阶段从上个世纪60年代开始,当时处于冷战威胁下的美国为了保证自己的通信在遭受敌对国家(苏联?!)的打击时不至于全部瘫痪,于是美国的高级研究计划局建设了阿帕网,也就是ARPANET,apra隶属于美国国防部,所以这个阿帕网的初期也是致力于军事的使用。成立之初也就连接了四台主机。
后来随着时间的退役,到了七十年代冷战疑云渐渐远去,阿帕网也发展到了几十台主机的规模。apra开始鼓励科研和教育部门进行网络通讯的研究,以改变阿帕网的联网通信问题。这也是第二阶段的开始。1974年,出现了连接分组网络的协议,其中就包括了TCP/IP——著名的网际互联协议IP和传输控制协议TCP。这些协议的出现使网络的互联成为可能。1986年,美国国家科学基金组织将分布在美国各地的5个为科研教育服务的超级计算 机中心互联形成NSFnet。网络的重心从军事转移到科研和教育。
在到1992年,(为什么我会对这个时间记得这么深刻)IBM、MCI、MERIT三 家公司联合组建了ansnet。这也是第三阶段的开始,网络商业化运作的开始。后面就巴拉巴拉的不说了。以上就是互联网的发展历程。

三.端口和IP
我的理解是IP就好像你家的具体地址,网络上的计算机通过IP找到你家。端口就是你家的门,如果没有门,是个人都能来你家里大小便显然不是一件很人性化的是事,端口就起到了限制或者维持通信的作用。
1)IP分为五类A,B,C,D,E(当初考网络工程还是偷偷百度的路过),4个八位二进制数构成。
A:
组成:由1字节的网络地址和3个字节主机地址组成
作用:可容纳1600万个主机(具体是16387064,百度的)。
B:
组成:由2字节的网络地址和2个字节主机地址组成
作用:可容纳6万个主机(具体是64516)。
C:
组成:由3字节的网络地址和1个字节主机地址组成
作用:可容纳254个主机,适用于小规模的局域网络。
D:
组成:第一个字节以“1110”开始,第一个字节的数字范围为224~239。
作用:多点播送
eg:“0.0.0.0”地址对应于当前主机,“255.255.255.255”当前子网的广播地址。
E:以“11110”开始,即第一段数字范围为240~254.E类地址保留,仅作实验和开发用

2)端口
百度百科说端口分成虚拟端口和物理端口原来以前电脑装机时候插来插去的那个不叫插口啊。
好了,我们在这说的是虚拟端口。
计算机与外界交流的出入口•端口是一种抽象的软件结构,包括一些数据结构和I/O缓冲区,端口号从0到65535,通常将端口分为三类
1.公认端口(WellKnownPorts),从0到1023,它们紧密绑定(Binding)一些服务
2.注册端口(RegsiteredPorts),从1024到49151.它们松散绑定一些服务。
3.动态/或私有端口(DynamicPorts),从49152到65535。理论上不应为服务分配这些端口。
常见的端口举例:
80端口分配给HTTP服务,135端口分配给RPC,还有耳熟能详的8088端口。
是不是带8的数字有神秘加成~

下面就是要说的重点了
学习过JAVA SE的应该都学过TCP和UDP。那什么是TCP/IP呢?
TCP/IP协议是Internet上不同系统之间互联的一组协议。它为分散和不同类型的硬件提供了一个通用的编程接口。TCP/IP协议使Internet尽可能成为一个分散的,无序的网络。

就我们前面说的七层网络模型,说过过时了,那是因为TCP/IP的出现,改写了模型,将七层变成了四层,应用层,表示层,会话层统一成了一个应用层,数据链路层和物理层合并成一成(有的文章说还是五层,即数据链路层和物理层还是两层)。

第四点.Socket通信
JAVASocket编程

Java.net.ServerSocket和Java.net.Socket两个类用于建立一个双端通信。

ServerSocket等待来自客户端的连接,而Socket连接到一个服务器端。
有些同学可能对socket有些误解,以为只有客户端要用到socket,而服务端只用serversocket。其实这是错的,两端都需要有个socket才能进行通讯,而服务端的sercersocket用于来进行监听,得到socket用的。

1)ServerSocket类
•ServerSocket类用于监听一个客户端的Socket连接,它将一直等待。
•ServerSocket构造器 ServerSocket(intport):用指定的端口port来创建一个侦听Socket。
ServerSocket(intport,intbacklog):加上一个用于改变连接队列长度的参数backlog。
ServerSocket方法:
Socketaccept()
Close()

2)Socket类
•Socket类的构造器
Socket()
Socket(InetAddressaddress,int port)
Socket(String host,int port)
还有三种不常用的就暂且忽略
Socket方法:
getInputStream()
getOutputStream()
Close()

时间: 2024-10-20 14:22:55

关于TCP/IP以及网络的一些小科普的相关文章

梳理Linux下OSI七层网络与TCP/IP五层网络架构

作为一个合格的运维人员,一定要熟悉掌握OSI七层网络和TCP/IP四层网络结构知识. 一.OSI七层网络协议 OSI是Open System Interconnect的缩写,意为开放式系统互联. OSI参考模型各个层次的划分遵循下列原则: 1)根据不同层次的抽象分层 2)每层应当有一个定义明确的功能 3)每层功能的选择应该有助于制定网络协议的国际标准. 4)各层边界的选择应尽量节省跨过接口的通信量. 5)层数应足够多,以避免不同的功能混杂在同一层中,但也不能太多,否则体系结构会过于庞大 6)同一

OSI七层和TCP/IP五层网络架构简介

OSI七层和TCP/IP五层网络架构简介 一.基本概念 OSI是Open System Interconnect的缩写,意为开放式系统互联. ARP(Address Resolution Protocol),地址解析协议. RARP(Reverse Address Resolution Protocol),反向地址转换协议. IP(Internet Protocol),网络之间互连的协议. ICMP(Internet Control Message Protocol),Internet控制报文协

Linux之网络基础TCP/IP以及网络属性配置

计算机网络区域范围: 局域网络 (Local Area Network, LAN):节点之间的传输距离较近 广域网 (Wide Area Network, WAN):传输距离较远,网络应用方面大多为类似 email, FTP, WWW 浏览等功能 计算机网络协议:网络连接过程分成数个阶层 (layer),每个阶层都有特别的独立的功能,不会互相干扰的. 目前的OSI七层协定(Open System Interconnection) OSI模型自上而下,分为以下: 应用层:文件传输,电子邮件,文件服

OSI七层模型与TCP/IP五层网络架构

1.OSI七层模型 OSI是Open System Interconnect的缩写,意为开放式系统互联. OSI参考模型分为物理层.数据链路层.网络层.传输层.会话层.表示层.应用层. 物理层涉及在信道上传输的原始比特流. 数据链路层的主要任务是加强物理层传输原始比特流的功能,使之对应的网络层显现为一条无错线路.发送包把输入数据封装在数据帧,按顺序传送出去并处理接收方回送的确认帧. 网络层关系到子网的运行控制,其中一个关键问题是确认从源端到目的端如何选择路由. 传输层的基本功能是从会话层接收数据

OSI七层与TCP/IP五层网络架构详解

OSI和TCP/IP是很基础但又非常重要的网络基础知识,理解得透彻对运维工程师来说非常有帮助. (1)OSI七层模型 OSI中的层 功能 TCP/IP协议族 应用层 文件传输,电子邮件,文件服务,虚拟终端 TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 表示层 数据格式化,代码转换,数据加密 没有协议 会话层 解除或建立与别的接点的联系 没有协议 传输层 提供端对端的接口 TCP,UDP 网络层 为数据包选择路由 IP,ICMP,RIP,OSPF,BGP,IGMP 数据链路

【网络编程】TCP/IP协议

Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议.Internet国际互联网络的基 础,由网络层的IP协议和传输层的TCP协议组成.TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准.协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求.通 俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,

11 TCP/IP 基础与Linux的网络配置

1. TCP/IP与OSI参考模型 TCP/IP是Unix/Linux世界的网络基础,在某种意义上Unix网络就是TCP/IP,而TCP/IP就是网络互联的标准.它不是一个独立的协议,而是一组协议.其中包括:TCP,IP,UDP,ARP,RARP等等. 2. IP地址 每个Internet上的主机和路由器都有一个IP地址,它包括网络号和主机号,IP地址都是32位(点分十进制),IP地址按国际标准划分为a,b,c,d,e五类. 3. Linux网络环境配置 方法一: #setup         

tcp/ip (网络通讯协议)

介绍 TCP: 传输控制协议, IP: 网际协议, TCP/IP: 供已连接互联网的计算机之间进行通信的通信协议 在tcp/ip内部 , 包含一系列处理数据通信的协议: tcp.udp.icmp.dhcp ip负责将每个包路由至它的目的地.(网络层) tcp用于应用程序之间的通信, 负责处理ip包.(传输层) RFC是tcp/ip协议的标准文档. tcp/ip, 又名: 网络通讯协议. 寻址 ip地址: 每个计算机必须有ip地址才能够接入互联网, 每个ip包必须有一个地址才能够发送到目的计算机.

TCP/IP, WebSocket 和 MQTT

按照OSI网络分层模型,IP是网络层协议,TCP是传输层协议,而HTTP和MQTT是应用层的协议.在这三者之间, TCP是HTTP和MQTT底层的协议.大家对HTTP很熟悉,这里简要介绍下MQTT.MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分.该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器的通信协议. HTTP的不足 HTTP协议经过多年的使用,发现了