- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络编程课程期末复习资料
网络程序设计与开发课程简介
第一章 绪论
1. TCP/IP网络参考模型包括四个层次:应用层、传输层、网络层、链路层。
2. 网络编程就是利用网络应用编程接口编写网络应用程序,实现网络应用进程间的信息交互功能。
3. 进程是处于运行过程中的程序实例,是操作系统调度和分配资源的基本单位。各种计算机应用程序在运行时,都以进程的形式存在。网络应用程序也不例外。
4. 从计算机网络体系结构的角度来看,网络应用进程处于网络层次结构的最上层。
用户进程 应用层
TCP/UDP 传输层
IP 网络层
5. 从功能上,可以将网络应用程序分为两部分,一部分是专门负责网络通信的模块,另一部分是面向用户或者作其他处理的模块,这两部分模块相互配合,来实现网络应用程序的功能。
6. 端口号,基于TCP和UDP协议的不同的网络应用程序,它们可以拥有相同的端口号。端口使用一个16位的数字来表示,它的范围是(0~65535),1024以下的端口号保留给预定义的服务。
7. 网间进程的标识:
端口
半相关: 传输协议+IP地址+端口号。
全相关:IP地址、本地机端口号、远端机IP地址、远端机端口号
8. 用户数据报协议UDP
用户数据报协议 (User Datagram Protoco, UDP)是一个简单的面向数据报的传输层(transport layer)协议,协议以消息为单位在网上传送数据,在发送端,消息一条一条地发送,在接收端,也只能一条一条地接收,每一条消息是独立的,消息之间存在着边界。
UDP在传送数据之前不需要先建立连接。对方的传输层在收到 UDP 报文后,不需要给出任何确认。虽然 UDP 不提供可靠交付,但在某些情况下UDP是一种最有效的工作方式。
9. 传输控制协议TCP传输控制协议(Transmission Control Protocol, TCP)是一种面向连接的、可靠的、基于字
节流的运输层通信协议。传输控制协议不管实际消息边界是否存在。
TCP提供全双工服务,即数据可在同一时间双向流动。在两个应用程序彼此连接之后,它们都可以发送和接收数据。TCP连接可以从应用程序A向B发送数据,而在同一时间还可以从B向A发送数据。
10. 服务器(server)这个术语来指那些运行着的服务程序。
服务器类计算机(server-class computer)这一术语来称那些运行服务器软件的强大的计算机。
11. “客户”(client)
“用户”(user)
第二章 windows套接字
1. 套接字应用程序编程接口是网络应用程序通过网络协议栈进行通信时所使用的接口,即应用程序与协议栈软件之间的接口,简称套接字编程接口(Socket API)。
它定义了应用程序与协议栈软件进行交互时可以使用的一组操作,决定了应用程序使用协议栈的方式、应用程序所能实现的功能、以及开发具有这些功能的程序的难度。
2. 要想实现套接字编程接口,可以采用两种实现方式:
一种是在操作系统的内核中增加相应的软件来实现,
一种是通过开发操作系统之外的函数库来实现。
3. 套接字的类型
1.?流式套接字(SOCK_STREAM)
提供面向连接的,可靠的数据传输服务,数据无差错,无重复的发送,且按发送的顺序接收,基于TCP协议
2.?数据报套接字(SOCK_DGRAM)
提供无连接的服务,数据包以独立包形式发送,不提供无错误的保证,数据可能丢失或重复,且接收顺序混乱,基于UDP协议
3.原始套接字
允许直接访问较低层的 协议。
4. Winsock编程一般基于C/S模型实现,套接口有三种类型:流式套接口,数据报套接口及原始套接口.
流式套接口定义了一种可靠的面向连接的服务,实现了无差错无重复的顺序数据传输.
数据报套接口定义了一种无连接的服务,数据通过相互独立的报文进行传输,是无序的,并且不保证可靠,无差错.
原始 socket 允许对低层协议如 IP 或 ICMP 进行直接访问,常用于新的网络协议的测试。
5.面向连接编程模型
6.无连接编程模型
7.winsock编程示例
/*----------------------------------------------------
* 程序: 服务器程序,TalkS_TCP.cpp
* 目的: 创建一个套接字,接收来自客户的连接请求;
* 输出来自客户的信息;
* 通过键盘输入信息,把信息发送给客户。
*----------------------------------------------------
*/
#include Winsock2.h //管理Wind
文档评论(0)