Transcript APP-G
Appendix - G
SENS
Wind River Systems, Inc. 1997
SENS
G-2
“Scalable Enhanced Network Stack”
Modular driver/stack interface
Enhanced Network Driver (END) supports polled network
drivers and multicasting.
New layer (MUX) provides a protocol-independent interface
to the network driver.
Upgrade to 4.4 BSD codebase
Many scalability options
Contemporary Internet Features
Contd...
G-3
Scalability
Include/exclude protocols individually (TCP, UDP, ICMP,
IGMP)
Flexible configuration control of network stack default behavior
(see netLib.h)
Tight control of network memory buffer pool configuration(see
netBufLib and usrNetwork.c)
G-4
Contemporary Internet Features
Dynamic Host Configuration Protocol (DHCP)
Routing Information Protocol (RIP)
Open Shortest Path First (OSPF) available as an optional
component
IP Multicasting
Resolver (client) for DNS (Domain Name Service)
Simple Network Time Protocol (SNTP)
G-5
DHCP
G-6
Extends features provided by BOOTP
Manual configuration for backward compatibility with
BOOTP
Automatic configuration to assign a dynamically allocated
IP address
Assignment may be temporary: Address “leased” to a client
for a limited time.
SENS supports DHCP client, server and relay agent operation
Routing
Manual routing configuration with calls in routeLib to support
specification of subnet mask for a destination
RIP (Routing Information Protocol) client and server support
OSPF (Open Shortest Path First) support available at extra cost
G-7
IP Multicasting
Allows more efficient transmission of data to multiple
destinations than broadcasting.
Uses class D network addresses 224.0.0.0 through
239.255.255.255
Consumers join a “multicast group.” All other hosts will be
unaffected by the transmission.
G-8
DNS Resolver
DNS (Domain Name Service) is a system which provides
automatic conversion between host names and IP addresses. See
hostAdd() for manual mapping of names to IP addresses.
Define INCLUDE_DNS_RESOLVER in config.h
Set the macros RESOLVER_DOMAIN_SERVER and
RESOLVER_DOMAIN appropriately
Resolver operation is fully integrated. (hostGetByName() and
hostGetByAddr() have been updated to use the resolver. Other
library routines, for example ping() and rcmd(), use these.)
G-9
SNTP Client & Server
Simple Network Time Protocol
Define INCLUDE_SNTPC for client support and
INCLUDE_SNTPS for server support in config.h
sntpcTimeGet() is the basic client call
Server requires a user provided function of the form
STATUS sntpsTimeHook (int request, void *pNtpTime)
Other library routines will set the request parameter to
SNTPS_TIME to retrieve the current 64-bit NTP
timestamp. See documentation for sntpsClockSet().
G-10