Java网络编程:初识网络编程

网络编程

什么是计算机网络

  • 两台或更多的计算机组成的网络
  • 同一网络内的任意两台计算机可以直接通信
  • 所有计算机必须遵循同一种网络协议

什么是互联网

  • 互联网是网络的网络
  • 互联网采取TCP/IP协议
  • 其中最重要的两个协议是TCP协议和IP协议

IP地址和网关

  • IP地址用于唯一标识一个网络接口

    • IPv4采用32位地址

      IPv4地址实际是一个二进制32位的整数,为了便于识别,用十六进制表示后可以分为4组数字,每组数字转换成十进制后用“.”隔开就是我们见到的IP地址:

    • IPv6采用128位地址
  • 公网IP地址可以直接被访问
  • 内网IP地址只能在内网访问
  • 本机地址使用127.0.0.1
  • 通常路由器或交换机有两个网卡(两个IP地址),分别连接两个不同的网络:

  • 同一网络下的计算机可以直接通信,他们的网络号相同,网络号由IP地址和子掩码按组对齐做与运算得到:

  • 不同网络下的计算机需要通过路由器或交换机网络设备间接通信,这样的网络设备叫做网关:

  • 网关的作用是连接多个网络,负责把一个网络的数据包发送到另一个网络,过程叫做路由:

  • 一台计算机的网络拥有IP地址,子网掩码和网关(路由器)三个关键配置:

域名

由于IP地址不便于记忆,通常使用域名来访问特定的服务,域名解析服务器DNS负责将域名翻译成对应的IP地址,客户端再根据IP地址访问服务器:

TCP/IP协议

  • IP协议是一个分组交换协议,不保证可靠传输,一个数据包通过IP协议传输会自动分成若干小的数据包然后通过网络进行传输
  • TCP(Transmission Control Protocol)协议是一个传输控制协议,建立再IP协议之上,IP协议负责传输数据包,TCP协议负责控制传输数据包;TCP协议传输之前需要先建立连接,然后才能传输数据,传输完成后断开连接;TCP协议是一个可靠传输协议,他通过接受确认,超时重传实现;TCP协议支持双向通信,双方可以同时传输和接受数据

UDP协议

UDP(User Datagram Protocol)协议是数据报文协议,不面向连接,不保证可靠传输,由于UDP协议传输效率高,通常用来传输视频等能容忍丢失部分数据的文件。

原文地址:https://www.cnblogs.com/abcboy/p/9763934.html

时间: 2024-10-05 03:10:05

Java网络编程:初识网络编程的相关文章

[JAVA · 初级]:22.网络编程

基本概念 计算机网络:把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大.功能强的网络系统,从而使众多的计算机可以方便地互相传递信息,共享硬件.软件.数据信息等资源. 计算机网络的主要功能: 资源共享: 信息传输与集中处理: 均衡负荷与分布处理: 综合信息服务 (www/综合业务数字网络 ISDN). 网络通信协议:计算机网络中实现通信必须有一些约定即通信协议,对速率.传输代码.代码结构.传输控制步骤.出错控制等制定标准. 网络通信接口:为了使两个结点之间能进行对话,必须在它

66.JAVA编程思想——网络编程

66.JAVA编程思想--网络编程 历史上的网络编程都倾向于困难.复杂,而且极易出错. 程序员必须掌握与网络有关的大量细节,有时甚至要对硬件有深刻的认识.一般地,我们需要理解连网协议中不同的"层"(Layer).而且对于每个连网库,一般都包含了数量众多的函数,分别涉及信息块的连接.打包和拆包:这些块的来回运输:以及握手等等.这是一项令人痛苦的工作.但是,连网本身的概念并不是很难.我们想获得位于其他地方某台机器上的信息,并把它们移到这儿:或者相反.这与读写文件非常相似,只是文件存在于远程

Java基础篇Socket网络编程中的应用实例

说到java网络通讯章节的内容,刚入门的学员可能会感到比较头疼,应为Socket通信中一定会伴随有IO流的操作,当然对IO流比较熟练的哥们会觉得这是比较好玩的一章,因为一切都在他们的掌握之中,这样操作起来就显得非常得心应手,但是对于IO本来就不是多熟悉的哥们来说就有一定的困难了,在搞清楚IO流操作机制的同时还必须会应用到Socket通信中去,否则会对得到的结果感到非常郁闷和懊恼,下面就和大家一起分享一下自己遇到一点小麻烦后的感触以及给出的解决办法. 要求:客户端通过Socket通信技术上传本地一

java基础学习总结——网络编程

永不放弃,一切皆有可能!!! 只为成功找方法,不为失败找借口! java基础学习总结——网络编程 一.网络基础概念 首先理清一个概念:网络编程 != 网站编程,网络编程现在一般称为TCP/IP编程. 二.网络通信协议及接口 三.通信协议分层思想 四.参考模型 五.IP协议 每个人的电脑都有一个独一无二的IP地址,这样互相通信时就不会传错信息了. IP地址是用一个点来分成四段的,在计算机内部IP地址是用四个字节来表示的,一个字节代表一段,每一个字节代表的数最大只能到达255. 六.TCP协议和UD

Java:进阶学习(1)——网络编程

Java:进阶学习(1)--网络编程 基础 Socket与ServerSocket Socket又称"套接字",网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket. Socket方法 getInetAddress();    远程服务端的IP地址 getPort();    远程服务端的端口 getLocalAddress()    本地客户端的IP地址 getLocalPort()    本地客户端的端口 getInputStream();   

JAVA基础知识之网络编程——-网络基础(多线程下载,get,post)

本文主要介绍java.net下为网络编程提供的一些基础包,InetAddress代表一个IP协议对象,可以用来获取IP地址,Host name之类的信息.URL和URLConnect可以用来访问web资源,URLDecode和URLEncode用来转换字符串. 本文会写两个例子来演示java网络编程的一些基本用法. 第一个例子,写一个程序用来模拟多线程下载. 本例中用到的技术有,多线程--多个线程同时读文件写文件,可以加快下载速度, 线程池--在本例中线程池不是必须,甚至是多余,只不过是为了演示

初识网络编程

初识网络编程 一.楔子 你现在已经学会了写python代码,假如你写了两个python文件a.py和b.py,分别去运行,你就会发现,这两个python的文件分别运行的很好.但是如果这两个程序之间想要传递一个数据,你要怎么做呢? 这个问题以你现在的知识就可以解决了,我们可以创建一个文件,把a.py想要传递的内容写到文件中,然后b.py从这个文件中读取内容就可以了. 但是当你的a.py和b.py分别在不同电脑上的时候,你要怎么办呢? 类似的机制有计算机网盘,qq等等.我们可以在我们的电脑上和别人聊

一、初识网络编程

一.初识网络编程 1.协议模型 1.1.OSI模型 OSI(Open System Interconnect)开放系统互联参考模型,是在网络历史的早期,国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)共同出版的开放系统互联的七层参考模型,它把网络分为七层. 1.2.TCP/IP协议簇模型的演变 ISO制定的OSI参考模型的过于庞大复杂,招致了许多批评,为此后续的TCP/IP模型得到了广泛的应用. TCP/IP是一系列模型的集合,早期的TCP/IP模型是四层结构,后来借鉴OSI的七层

Python之网络编程(一)网络编程初识

网络编程初识 C/S B/S架构 C/S B/S架构 C: client端 B: browse 浏览器 S: server端 C/S架构: 基于客户端与服务端之间的通信 ? QQ, 游戏,皮皮虾, 快手,抖音. ? 优点: 个性化设置,响应速度快, ? 缺点: 开发成本,维护成本高,占用空间,用户固定. B/S架构: 基于浏览器与服务端之间的通信 ? 谷歌浏览器,360浏览器,火狐浏览器等等. ? 优点: 开发维护成本低,占用空间相对低,用户不固定. ? 缺点: 功能单一,没有个性化设置,响应速