网络编程基础知识点总结

网络编程基础知识点总结

一. 概述

本文是网络编程系列的第一篇文章,所以不讲代码,主要是网络编程的一些基础知识,下面的这些知识点主要是对java网络编程这本书的归纳与整理。有兴趣的同学可以看看。

我们知道计算机之间的通信要经过一系列复杂的过程,计算机之间通过传输介质、通信设施和网络通信协议互联,实现资源共享和数据传输。而我们的网络编程就是使用程序使互联网的两个(或多个)计算机之间进行数据传输。当然java语言,为了实现两个计算机之间的数据传输,提供了一系列的接口,使得开发人员可以方便的实现。

二 、网络体系结构

计算机之间的通信要经过一系列复杂的过程,必须将这两台计算机的物理逻辑和通信逻辑好好的规划好。为此我们先看看计算机网络的层次模型。然后再进行分析。

在这里插入图片描述

从上面这张图我们对计算机之间的通信特点进行整理一下:

(1)计算机之间的网络通信被分解为多个层,层与层之间用接口连接。

(2)通信的双方具有相同的层次,层次实现的功能由协议数据单元(PDU)来描述。

(3)不同系统中的同一层构成对等层,对等层之间通过对等层协议进行通信。

(4)在通信的时候数据必须由一层依次传递到下一层,不能跨级传输。

为了促进计算机网络的发展,国际标准化组织ISO在现有网络的基础上,提出了不基于具体机型、操作系统或公司的网络体系结构,称为开放系统互连参考模型,即OSI/RM。但是ISO制定的OSI参考模型过于庞大、复杂招致了许多批评。因此美国国防部提出了TCP/IP协议栈参考模型,简化了OSI参考模型,获得了广泛的应用。

1、OSI参考模型

这里首先介绍OSI参考模型,是国际标准化组织ISO提出的,把网络通信的工作分为7层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。也是我们在大学计算机网络课程中认识的那样。下面一张图来看看。

在这里插入图片描述

(1)物理层处于OSI的最底层,是开放系统的基础,它的功能主要是为计算机提供传送数据的通路以及传输数据。

(2)数据链路层的主要任务是实现计算机网络中相邻节点之间的可靠传输,把原始的、有差错的物理传输数据加上数据链路协议以后,构成逻辑上可靠的数据链路。

(3)网络层主要完成的功能主要包括路由选择、网络寻址、流量控制、拥塞控制、网络互连等。实现两个计算机节点之间的数据传输。

(4)传输层涉及源端节点到目的端节点之间可靠的信息传输。也就是说是采用TCP/IP还是采用UDP协议。他需要三次握手四次挥手。

(5)会话层的主要功能是负责应用程序之间建立、维持和中断会话,提供单工、半双工和全双工3种不同的通信方式,使系统和服务之间有序地进行通信。

(6)表示层关心所传输数据信息的格式定义,其主要功能是把应用层提供的信息变换为能够共同理解的形式,提供字符代码、数据格式、控制信息格式、加密等的统一表示。</

  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是Android入门知识点的总结: 1. Android基础知识: - Android是一个基于Linux的开源操作系统,主要用于移动设备。 - Android应用程序使用Java编程语言开发。 - Android应用程序由多个组件组成,包括活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)和内容提供者(Content Provider)。 2. Android应用程序的生命周期: - 活动(Activity)是Android应用程序的用户界面的基本构建块。活动有不同的生命周期状态,如创建、启动、暂停、恢复和销毁。 - 活动的生命周期由回调方法控制,如onCreate()、onStart()、onResume()、onPause()、onStop()和onDestroy()。 3. Android布局: - Android应用程序使用XML文件定义用户界面布局。 - 常用的布局类型包括线性布局(LinearLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)和约束布局(ConstraintLayout)。 4. Android资源管理: - Android应用程序使用资源文件来存储图像、字符串、颜色等非代码资源。 - 资源文件存储在res目录下,可以通过资源ID在代码中访问。 5. Android意图(Intent): - 意图用于在不同组件之间传递数据和执行操作。 - 显式意图(Explicit Intent)用于启动特定的组件,如活动。 - 隐式意图(Implicit Intent)用于执行系统级操作,如拨打电话、发送短信等。 6. Android存储: - Android应用程序可以使用内部存储和外部存储来保存数据。 - 内部存储用于保存应用程序私有数据,如数据库文件。 - 外部存储用于保存公共数据,如图片、音频和视频文件。 7. Android网络通信: - Android应用程序可以使用HTTP协议进行网络通信。 - 可以使用Android提供的HttpClient类或者使用第三方库,如OkHttp、Volley等。 8. Android数据库: - Android应用程序可以使用SQLite数据库进行数据存储。 - SQLite是一种轻量级的关系型数据库,适用于移动设备。 9. Android权限管理: - Android应用程序需要在清单文件中声明所需的权限。 - 权限用于保护用户的隐私和设备的安全。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值