计算机网络

java基础 —— 网络编程概述

一曲冷凌霜 提交于 2019-11-29 11:24:50
网络编程概述 A:计算机网络 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。 B:网络编程 就是用来实现网络互连的不同计算机上运行的程序间可以进行数据交换。 网络编程三要素之IP概述 每个设备在网络中的唯一标识 每台网络终端在网络中都有一个独立的地址,我们在网络中传输数据就是使用这个地址。 ipconfig:查看本机IP192.168.12.42 网络编程三要素之端口号概述 每个程序在设备上的唯一标识 每个网络程序都需要绑定一个端口号,传输数据的时候除了确定发到哪台机器上,还要明确发到哪个程序。 端口号范围从0-65535 oracle: 1521 web: 80 tomcat: 8080 网络编程三要素协议 为计算机网络中进行数据交换而建立的规则、标准或约定的集合。 UDP 面向无连接,数据不安全,速度快。不区分客户端与服务端。 TCP   * 面向连接(三次握手),数据安全,速度略低。分为客户端和服务端。 三次握手: 客户端先向服务端发起请求, 服务端响应请求, 传输数据 Socket通信原理图解 A:Socket套接字概述: 网络上具有唯一标识的IP地址和端口号组合在一起才能构成唯一能识别的标识符套接字。 通信的两端都有Socket。

C#-socket简单同步通信学习

。_饼干妹妹 提交于 2019-11-29 11:17:59
SOCKET原理 一、套接字(socket)概念   套接字(socket)是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元。它是网络通信过程中端点的抽象表示,包含进行网络通信必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远地主机的IP地址,远地进程的协议端口。   应用层通过传输层进行数据通信时,TCP会遇到同时为多个应用程序进程提供并发服务的问题。多个TCP连接或多个应用程序进程可能需要通过同一个 TCP协议端口传输数据。为了区别不同的应用程序进程和连接,许多计算机操作系统为应用程序与TCP/IP协议交互提供了套接字(Socket)接口。应 用层可以和传输层通过Socket接口,区分来自不同应用程序进程或网络连接的通信,实现数据传输的并发服务。 二、建立socket连接   建立Socket连接至少需要一对套接字,其中一个运行于客户端,称为ClientSocket ,另一个运行于服务器端,称为ServerSocket 。   套接字之间的连接过程分为三个步骤: 服务器监听,客户端请求,连接确认。 服务器监听:服务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态,等待客户端的连接请求 客户端请求:指客户端的套接字提出连接请求,要连接的目标是服务器端的套接字。为此,客户端的套接字必须首先描述它要连接的服务器的套接字

C# Socket编程笔记

≯℡__Kan透↙ 提交于 2019-11-29 11:15:50
注:本文为个人学习摘录,原文地址:http://www.cnblogs.com/stg609/archive/2008/11/15/1333889.html 看到这个题目,是不是很眼熟?在博客园里搜下,保证会发现关于这个东东的文章实在是太多了~~~真得是没有写得必要,而且我也有点懒得去琢磨字句。(看到这,肯定得来个转折的了,不然就看不到下文了,不是吗)但是,为了自己下一篇要写的文章做参考,还是有必要先补充一下socket基础知识。 注意:如果你已经接触过socket,那就没什么必要耽误时间看下去了。另外,如果发现其中任何错误,欢迎直接指出。 1.按惯例先来介绍下socket Windows中的很多东西都是从Unix领域借鉴过来的,Socket也是一样。在Unix中,socket代表了一种文件描述符(在Unix中一切都是以文件为单位),而这里这个描述符则是用于描述网络访问的。什么意思呢?就是程序员可以通过socket来发送和接收网络上的数据。你也可以理解成是一个API。有了它,你就不用直接去操作网卡了,而是通过这个接口,这样就省了很多复杂的操作。 在C#中,MS为我们提供了 System.Net.Sockets 命名空间,里面包含了Socket类。 2.有了socket,那就可以用它来访问网络了 不过你不要高兴得太早,要想访问网络,还得有些基本的条件(和编程无关的我就不提了):a.

C# Socket编程笔记

妖精的绣舞 提交于 2019-11-29 11:14:42
C# Socket编程笔记 1.按惯例先来介绍下socket Windows中的很多东西都是从Unix领域借鉴过来的,Socket也是一样。在Unix中,socket代表了一种文件描述符(在Unix中一切都是以文件为单位),而这里这个描述符则是用于描述网络访问的。什么意思呢?就是程序员可以通过socket来发送和接收网络上的数据。你也可以理解成是一个API。有了它,你就不用直接去操作网卡了,而是通过这个接口,这样就省了很多复杂的操作。 在C#中,MS为我们提供了 System.Net.Sockets 命名空间,里面包含了Socket类。 2.有了socket,那就可以用它来访问网络了 不过你不要高兴得太早,要想访问网络,还得有些基本的条件(和编程无关的我就不提了):a. 要确定本机的IP和端口,socket只有与某一IP和端口绑定,才能发挥强大的威力。b. 得有协议吧(否则谁认得你这发送到网络的是什么呀)。想要复杂的,我们可以自己来定协议。但是这个就不在这篇里提了,我这里介绍两种大家最熟悉不过的协议:TCP & UDP。(别说你不知道,不然...不然...我不告诉你) 如果具备了基本的条件,就可以开始用它们访问网络了。来看看步骤吧: a. 建立一个套接字 b. 绑定本机的IP和端口 c. 如果是TCP,因为是面向连接的,所以要利用ListenO(

C# Socket编程笔记

只谈情不闲聊 提交于 2019-11-29 11:14:23
1.按惯例先来介绍下socket Windows中的很多东西都是从Unix领域借鉴过来的,Socket也是一样。在Unix中,socket代表了一种文件描述符(在Unix中一切都是以文件为单位),而这里这个描述符则是用于描述网络访问的。什么意思呢?就是程序员可以通过socket来发送和接收网络上的数据。你也可以理解成是一个API。有了它,你就不用直接去操作网卡了,而是通过这个接口,这样就省了很多复杂的操作。 在C#中,MS为我们提供了 System.Net.Sockets 命名空间,里面包含了Socket类。 2.有了socket,那就可以用它来访问网络了 不过你不要高兴得太早,要想访问网络,还得有些基本的条件(和编程无关的我就不提了):a. 要确定本机的IP和端口,socket只有与某一IP和端口绑定,才能发挥强大的威力。b. 得有协议吧(否则谁认得你这发送到网络的是什么呀)。想要复杂的,我们可以自己来定协议。但是这个就不在这篇里提了,我这里介绍两种大家最熟悉不过的协议:TCP & UDP。(别说你不知道,不然...不然...我不告诉你) 如果具备了基本的条件,就可以开始用它们访问网络了。来看看步骤吧: a. 建立一个套接字 b. 绑定本机的IP和端口 c. 如果是TCP,因为是面向连接的,所以要利用ListenO()方法来监听网络上是否有人给自己发东西;如果是UDP

JAVA 通过 Socket 实现 TCP 编程

99封情书 提交于 2019-11-29 11:11:40
简介 TCP简介 TCP(Transmission Control Protocol 传输控制协议)是一种面向 连接的 、 可靠的 、 基于字节流 的传输层通信协议,由IETF的RFC 793定义。在简化的计算机网络OSI模型中,它完成第四层 传输层 所指定的功能,用户数据报协议(UDP,下一篇博客会实现)是同一层内 另一个重要的传输协议。在因特网协议族(Internet protocol suite)中,TCP层是位于IP层之上,应用层之下的中间层。不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP层不提供这样的流机制,而是提供不可靠的包交换。 应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分区成适当长度的报文段(通常受该计算机连接的网络的数据链路层的最大传输单元( MTU)的限制)。之后TCP把结果包传给IP层,由它来通过网络将包传送给接收端实体的TCP层。TCP为了保证不发生丢包,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的包发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据包就被假设为已丢失将会被进行重传。TCP用一个校验和函数来检验数据是否有错误;在发送和接收时都要计算校验和。 JAVA Socket简介 所谓socket

C# Socket编程(1)基本的术语和概念

两盒软妹~` 提交于 2019-11-29 11:11:22
  计算机程序能够相互联网,相互通讯,这使一切都成为可能,这也是当今互联网存在的基础。那么程序是如何通过网络相互通信的呢?这就是我记录这系列的笔记的原因。C#语言从一开始就是为了互联网而设计的,它 为实现程序的相互通信提供了许多有用API,这类应用编程接口被称为套接字(Socket) 。在开始学习C# Socket之前我们需要先来了解一下基本的术语和概念。 阅读目录:    1.计算机网络     2.分组报文     3.协议      3.1 IP协议      3.2 TCP协议      3.2 UDP协议    4.网络地址      4.1 回环地址     5.DNS和本地配置数据库    6.客户端和服务器    7.什么是Socket 1.计算机网络   计算机网络 由一组通过 通信信道(Communication channel) 相互连接的机器组成。这些机器被称为: 主机(hosts) 和 路由器(routers) : 通信信道 —— 是将字节序列从一个主机传输到另一个主机的一种手段(有线、无线(WiFi)等方式)。 主机 —— 作用是运行程序的计算机。 路由器 —— 作用是将信息从一个通信信道传递或转发到另一个通信信道。  TCP/IP网络通信流程图: 2.分组报文 分组报文 —— 在网络环境中由程序创建和解释的字节序列。 3.协议    协议

物理层(计算机网络)

自作多情 提交于 2019-11-29 10:18:06
物理层概述 物理层解决如何在连接在一起的各种不同计算机的传输数据媒介上传输二进制(如: 010101)比特流,就是以何种方式、哪种形态进行传输。 传输媒介的接口的一些特性:机械特性、电气特性、功能特性、过程特性 机械特性: 接口形状、大小、引线数量等,通俗讲也就是网线的水晶头的设计等一些规定 电气特性: 规定电压范围(-5V~+5V)等 在网线中传输时所用的电压范围 功能特性: 指明某条线上出现的某一电平的电压的意义 过程特性: 也称规程特性,规定建立连接时各个相关部件的工作步骤 物理通讯基础知识 数据通信模型 下图为源点、发送器、接受器、终点、源系统、传输系统、目的系统的对应关系 PC机将要发的数据转换为010101,数字比特流就代表着010101传给调制解调器,调制解调器将数字比特流转换为模拟信号,通过公用电话网传到很远的目的地去。然后逆过来解析成原数据就行了 提到的数字比特流、模拟信号之后会讲解到,大概了解了数据通信的模型,知道数据是转换成哪种形势传到目标中。 常用术语 1)通信的目的:传送信息 2)数据:运送信息的实体 3)信号:数据的电气或电磁的表现,通俗讲就是通过电气或者电磁的一些表现形式来代表我们的数据,这就是我们说的信号,电气、电磁(比如一些电磁波等)。 数字信号:代表消息的参数的取值是离散的,下面就是数字信号,通过一高一低,不连续的波。 模拟信号

HTTP协议 处理流程

我与影子孤独终老i 提交于 2019-11-29 08:29:37
HTTP协议 处理流程 我们平时在浏览网页的时候都是使用浏览器,输入你要的网址后回车,就会显示出我们所想要的内容,看似这个简单的用户操作行为的背后,Web的工作原理是怎样的呢?到底隐藏了些什么呢? 对于传统的上网流程,系统它是这么做的:浏览器本身它是一个客户端,当输入URL地址的时候,浏览器首先会去请求DNS服务器,通过DNS查询获取相应的域名所对应的IP地址,然后通过这个映射的IP地址找到IP对应的服务器,并建立连接,等浏览器发送完HTTP Request(请求)包后,服务器接收到请求包之后才开始处理,返回HTTP Response(响应)包,客户端浏览器收到来自服务器的响应后就开始渲染这个Response包里的主体(body)部分,等收到全部的内容后断开与该服务器之间的连接。 一个Web服务器也被称为HTTP服务器,它通过HTTP协议与客户端通信。这个客户端通常指的是Web浏览器(其实手机端客户端内部也是浏览器实现的)。 Web服务器的工作原理可以简单地定义为: 1 客户机通过TCP/IP协议建立到服务器的TCP连接 2 客户端向服务器发送HTTP协议请求包,请求服务器里的资源文档 3 服务器向客户机发送HTTP协议应答包,如果请求的资源包含有动态语言的内容,那么服务器会调用动态语言的解释引擎负责处理“动态内容”,并将处理得到的数据返回给客户端 4 客户机与服务器断开

计算机网络_第2章 物理层

人走茶凉 提交于 2019-11-29 05:00:00
计算机网络 第2章 物理层 2.1 物理层的基本概念 2.2 数据通信的基础知识 2.2.1 数据通信系统的模型 一个数据通信系统可以划分为三大部分,即源系统(或发送端,发送端),传输系统(或传输网络)和目的系统(或接收端,接收方) 源系统一般包括以下两个部分 源点 发送器 接收器 终点 信号可以分为两大类: 模拟型号(连续信号) 数字信号(离散信号) 2.2.2 有关信道的几个基本概念 从通信双方信息交互的方式来看,可以有以下三种基本方式 单向通信 又称为单工通信 双向交替通信 又称为半双工通信 双向同时通信 又称为全双工通信 来此信源的信号称为基带信号。往往要对基带信号进行调制。 调制可以分为两大类: 基带调制 把数字信号转换为另一种形式的数字信号,也成为编码 载波 1.常用编码方式 不归零制 归零制 曼彻斯特编码 差分曼彻斯特编码 2.基本的带通调制方法 调幅AM 调频FM 调相PM 2.2.3 信道的极限容量 1.信道能够通过的频率范围 2.信噪比 2.3 物理层下面的传输媒体 2.3.1 导引型传输媒体 1.双绞线 为了提高双绞线抗电磁干扰能力,使用屏蔽双绞线(STP)。 绞合线类型 带宽 线缆特点 典型应用 3 16MHz 模拟电话,传统以太网(10Mbit/s) 4 20MHz 曾用于令牌局域网 5 100MHz 传输速率不超过100Mbit/s的应用 5E