"网络编程"学习笔记(5)

原创 2004年08月26日 00:18:00

winsock编程api:(一个和协议无关的接口)

 

1.nagle算法?

2.可靠性和次序性两者不能兼而得之,保证了数据包顺序,就不能自动保证数据的完整性。这是为什么?

3.那我们是否考虑网络通讯中的滞后现象?

4.在局域网中若一台工作站发出一个消息,那么各台机器需花时间来处理这个数据包,看是否有应用对它感兴趣。这样一台机子中病毒会减慢整一个网络。如前期的“冲击波”使整个局域网瘫痪。而路由其对广播包可以拒绝传输。

5.协议的可路由的含义:路由协议对于路由器而言它是对路由协议的一种挑战,它对非路由协议的数据包一概抛掉,其中NetBEUI是最不幸的,她不能路由。

NetBEUI: NETBEUI是为IBM开发的非路由协议,用于携带NETBIOS通信。NETBEUI缺乏路由和网络层寻址功能,既是其最大的优点,也是其最大的缺点。因为它不需要附加的网络地址和网络层头尾,所以很快并很有效且适用于只有单个网络或整个环境都桥接起来的小工作组环境。

6.WSAenumprotocals:网络协议的安装信息的获得。

WSAstartup:打开一个新的winsoke

int  WSAStartup(WORD wVersion Requested , LPWSADATA  lpWSAData)

其中WSAData的结构是:

struct WSAData {

    WORD             wVersion;

    WORD             wHighVersion;

    char             szDescription[WSADESCRIPTION_LEN+1];

    char             szSystemStatus[WSASYSSTATUS_LEN+1];

    unsigned short   iMaxSockets;

    unsigned short   iMaxUdpDg;

    char FAR *       lpVendorInfo;

};

 

7.WSAClentup:当不用一个winsoke后的清除工作。

8.套接字:指向传输提供者的句柄(句柄的解释在上次日记中有详细记载)。

建立套接字(socket):
SOCKET socket (
  int af,      
  int type,    
  int protocol 
);

9.其中立套接字的前三个参数组织成三级。第一个同时也是最重要的参数是地址家族。它指定准备使用哪种协议,另外还为第二和第三个参数指定有效选项。比如,如果选择了AT M地址家族( A F _ AT M ), 那么在选用套接字类型时, 就会限定只能采用原始套接字(S O C K _ R AW)。其中WSASocke可以提供更全面的参数链表。

Winsock编程-WSAEnumProtocols()

WSAEunmProtocols  获取系统上安装的网络协议相关信息。int WSAEnumProtocols ( LPINT lpiProtocols, ...
  • badu_123
  • badu_123
  • 2010-09-14 22:34:00
  • 1362

"网络编程"学习笔记(5)

winsock编程api:(一个和协议无关的接口) 1.nagle算法?2.可靠性和次序性两者不能兼而得之,保证了数据包顺序,就不能自动保证数据的完整性。这是为什么?3.那我们是否考虑网络通讯中的滞后...
  • hongweijin
  • hongweijin
  • 2004-08-26 00:18:00
  • 1298

Windows完成端口编程(转载)

Windows完成端口编程目录一 基本概念二 OVERLAPPED数据结构三 完成端口的内部机制创建完成端口完成端口线程的工作原理线程间数据传递线程的安全退出一 基本概念      设备---wind...
  • tjb_1216
  • tjb_1216
  • 2009-10-03 11:10:00
  • 1717

Java 网络编程学习笔记(一)基本网络概念

网络分层在正式开始学习javaweb之前,需要了解一些基本的概念,对于一些有用的概念这里做一个笔记。   事实上整个网络是一个分层模型,可以简单地分为:主机网络层(host-to-work layer...
  • My_dearest_
  • My_dearest_
  • 2018-01-27 21:14:03
  • 74

0-Linux 网络编程学习笔记导航

学习交流群: Linux 学习交流群 610441700 说明:本系列文章并不能取代 《UNP》这本旷世之作,文章中难免有错误与不足之处,希望读者们遇到有疑问的地方可以加群互相交...
  • q1007729991
  • q1007729991
  • 2017-04-04 17:09:48
  • 5231

Unix网络编程学习笔记

声明 本笔记尽量不涉及SCTP、IPv6以及Unix平台特定的相关知识等.便于学习Winsock的读者阅读. 第一章 简介  说明:相关内容请阅读本博客关于计算机网络的笔记http://t....
  • Study_2011
  • Study_2011
  • 2013-10-01 08:50:40
  • 1623

Unix网络编程读书笔记(一)

之前终于把unix环境高级编程这本书过了一遍,其中介绍的内容不少,有些内容一下子还接受不了。算了,就先这样吧,以后用到的时候再详细研究吧。 今天开始看看Unix网络编程这本书。还是在看书的同时写写读书...
  • u012927281
  • u012927281
  • 2016-08-18 22:24:47
  • 447

网络编程学习笔记一

本学期开始学习网络编程,第一个任务是学时TCP/IP客户端服务器的搭建 用C写服务器端(Server.cpp) #pragma comment(lib, "ws2_32.lib")//预编译 #inc...
  • letianxf
  • letianxf
  • 2017-02-22 21:28:51
  • 308

Unix网络编程读书笔记(五)

使用UDP编写的一些常见的应用程序有:DNS(域名系统)、NFS(网络文件系统)和SNMP(简单网络关系协议)。 UDP协议的通信函数分别是sendto与recvfrom函数,函数原型如下: #inc...
  • u012927281
  • u012927281
  • 2016-09-01 21:54:36
  • 292

《UNIX网络编程 卷2》读书笔记(二)

      如何知道进程在一个空消息队列中放入一个消息?如果阻塞在msgrcv调用中,则除了等待无法做其他事情,如果给msgrcv指定非阻塞标志(IPC_NOWAIT),尽管不阻塞了,但必须持续调...
  • phinecos
  • phinecos
  • 2008-05-27 16:50:00
  • 493
收藏助手
不良信息举报
您举报文章:"网络编程"学习笔记(5)
举报原因:
原因补充:

(最多只允许输入30个字)