Network Communications - 27th Edition (Spring 2010)
Network Communications - 27th Edition (Spring 2010)
Network communications provide the required connectivity to support distributed computer processing. Network products support a stable and dependable communication protocol for distributed data transport. A variety of communication protocols supports distributed applications and data resources located at sites throughout an organization.
For several years, network technology was a relatively static environment while computer performance was increasing at an accelerating rate. Today communication technology supports a dramatic shift in network solutions, providing worldwide communications over the Internet and bringing information from millions of sources directly to the desktop in real time.
- 1 Desktop Workstation Environment
- 2 Client/Server Communication Concept
- 3 GIS Client/Server Communication Protocols
- 4 Client/Server Network Performance
- 5 Network Latency Considerations
- 6 Shared Network Capacity
- 7 Network Design Guidelines
- 8 Enterprise System Architecture
Desktop Workstation Environment
GIS applications rate among the heavy users of network traffic along with document management and video conferencing as shown in figure 6-1. GIS technology provides a visual display environment to the user supporting very quick analysis of large amounts of graphic data. Access to distributed data sources for real-time display and analysis puts large demands on network communications. Data must be transported across the network to where the program is executed to display the information.
Data is a collection of digital computer information stored in media that have the capability to record and retain the data structure. This data is represented by little pieces of information called bits. Each bit takes up the same space on storage or transmission media. For convenience, these little bits can be grouped into bytes of information with each byte containing eight bits. Data can be transported from one location to another within packets that protect the integrity of this data.
Data is typically transported from one storage location to another over copper wire or glass fiber physical networks. Other types of transport media include microwave, radio wave, and satellite digital transmissions. Each network protocol has limits to its supported rate of data transport based on the technology used to support the transmission.
Network transport solutions can be grouped into two general technology classes. These classes include LANs and WANs. The volume of data (measured in bits) that can be transported per second represents the transport rate (capacity) of a specific network segment. This capacity is called network bandwidth and is typically measured in millions of bits (megabits [Mb]) or billions of bits (gigabits [Gb]) per second.
Figure 6-2 illustrates the different types of networks and following are their descriptions.
Local Area Networks
Local area networks support high-bandwidth communication for short distances. This environment supports local operating environments (usually within a building or local campus environment). Data transport over a single technology is single threaded, which means only one data transmission can be supported on a single LAN segment at any time. The cost for LAN environments is inexpensive relative to other hardware costs supporting the system environment.
Wide Area Networks
Wide area networks support communication between remote locations. Technology supports much lower bandwidth than LAN environments, but transmission is possible over long distances. This is a data transport environment, which means data is packaged in a series of additional packets and transported as a stream of data along the transmission medium. The cost for WAN connections is relatively high compared to LAN environments.
Wireless communications use radio frequency bands as a data transport media. Radio frequencies used for wireless transmissions connect user devices to area communication transceivers, and the transceivers connect the communications to the local or wide area communication networks. Wireless communications broadcast over shared public frequencies and tend to experience higher latency than hard wire connections.
Network traffic capacity is measured in terms of connection bandwidth. Figure 6-3 provides an overview of currently popular network protocols and available traffic capacity.
The capacity of a network segment is established by the connection (communication port) bandwidth specifications. Computers are connected to the network through a network interface card (NIC) or a wireless transmitter. Network segments are connected by routers and switches, boxes that provide communication ports for connecting network segments. Wireless communications transmit over radio frequencies to antennas that are connected to the communication network infrastructure (routers and switches). All of these routers, switches, and transmitters are connected by wires that represent the network communication infrastructure.
Local area (LAN) wired networks have standardized on Ethernet protocols - they are simple to manage and provide the capacity we need for local network communications. Wide area networks still use a variety of protocols, including a collection of telephone wire and fiber transmissions (modem, T-carrier and E-carrier fiber communications, Cable TV lines, digital subscriber lines-DSL, etc) as well as wireless communications (radio frequencies, infrared transmitters, satellite communications, etc).
Data capacity is measured in terms of megabytes or gigabytes when stored on computer disk. Megabyte is abbreviated using a large "B," while megabit is abbreviated using a small "b." One must remember 1 MB = 8 Mb when converting data volume from disk storage to network traffic. Network traffic also includes some protocol overhead, so a simple rule-of-thumb is to translate 1MB of data to about 10 Mb of traffic.
What is Data (i.e. Why so many Protocols?)
I remember a trip I made to the Chicago Science and Industry Museum when I was a young boy. They had a simple light bulb display that demonstrated how computers think. This was in the early 1960's back when computers were not common household appliances. The display showed how a series of on and off light bulbs could be used to add and subtract numbers - the scientific breakthrough that gave us computers. Who ever thought we could share our thoughts and ideas with a mechanical device that could be trained to do our brain work? Figure 6-4 answers a fundamental question that changed our world.
We call these patterns of 1's and 0's data. Patterns that represent our thoughts and ideas, and can be manipulated to produce information products we can use in our work. Data is not a physical thing that has mass and takes up space - the content is a pattern representing our ideas. Understanding this concept is important, since it explains why we have so many different ways to store and move data. It is also important since it suggests the physical laws of space and travel do not apply directly to data itself, only to the medium we use to store and move data. This opens a world of possibilities to communicate and store data in ways we may not even imagine today - we are limited only by our imagination. Satellites collecting high resolution images of our world that we can display on our cell phones - changes beyond our imagination less than 10 years ago. Will science soon overcome the communication infrastructure limitations we experience today? I expect so.
Client/Server Communication Concept
Data is passed over the network using a variety of client/server communication protocols. Communication processes located on client and server platforms define the communication format and address information. Data is packaged in communication packets, which contain communication control information required to transport the data from its source client process to the destination server process.
Communication Packet Structure
The basic Internet packet structure as shown in figure 6-5 includes destination and source addresses and a series of control information in addition to the data structure. This information supports delivery of the packet across the network medium. The IP packet size will vary depending on the amount of data. Data can be distributed across several packets to support a single data transfer.
Network Transport Protocol
The communication packet is constructed at different layers during the transmission process. In figure 6-6, a data stream from the host A application is sent through the protocol layers to establish a data frame for network transmission. The Transmission Control Protocol (TCP) header packages the data at the transport layer, the Internet Protocol (IP) header is added at the Internet layer, and the Media Access Control (MAC) address information is included at the physical network layer. The data frame is then transmitted across the network to host B where the reverse process moves the data to the host application. A single data transfer can include several communications back and forth between the host applications.
GIS Client/Server Communication Protocols
Figure 6-7 provides an overview of the primary communication protocols used for GIS operations. Each protocol implementation includes client and server components to support data delivery. The client process prepares the data for transmission, and the server process delivers the data to the application environment.
Network file services (NFS) (UNIX) and Common Internet File System (CIFS) (Windows) Protocols
Support remote disk mounting enabling a client application to access data from a distributed server platform (network file share). All query intelligence resides in the client application, providing query instructions to access data located on the server platform. Data must be transferred to the client application to support query execution.
Database Access Protocols
ArcSDE includes client and server communication components. The database management system (DBMS) includes intelligence to support query processing. Compressed data is provided for network transfer and database storage. Data is uncompressed by the client application (ArcObjects). Data must be transferred to the client application to support analysis and display.
An alternative ArcSDE client direct connect option is available that connects with a DBMS client application program interface (API) executed on the client desktop. The ArcSDE middleware functions are supported on the client platform, and the DBMS network client supports data transmission to the server. Query processing remains on the DBMS server.
ICA and RDP Protocols
The protocols support remote terminal display and control of applications hosted on a shared Windows Terminal Server. Both protocols transmit display and control information to the terminal client. Both the Independent Computing Architecture (ICA) protocol and Remote Desktop Protocol (RDP) compress data for transmission.
The Hypertext Transfer Protocol (HTTP) is a standard Web transmission protocol. In this transaction-based environment, service selection and display are controlled by the browser client. Data is compressed for transmission. There are a variety of Internet Protocols that can be implemented within the HTTP framework.
HTTP display traffic resolution is established by the published map service for Web browser clients, and by the desktop resolution for ArcGIS Desktop clients. Traffic for the ArcGIS Desktop is normally higher because of the larger image transfers. Image size is directly proportional to the physical screen display resolution; thus, larger image displays result in higher traffic.
Client/Server Network Performance
The data transfer traffic and the network bandwidth can be used to estimate minimum network transport times for a single map display transaction. A typical GIS application requires up to 1 MB of data to generate a new map display. Typical terminal/browser display traffic is about 100 KB of data for the same map display.
Figure 6-8 shares typical data transfer requirements in megabytes, shows the conversion to megabits of traffic for transmission, includes any adjustments of this data performed by the communication protocol, and identifies the total volume of traffic in megabits that must be transmitted (protocol overhead may be greater than what was used in this sample conversion).
The minimum data transport times are calculated for five standard bandwidth solutions (56 kilobits per second [Kbps] for standard dial-up communications; 1.54 megabits per second [Mbps] for typical WAN communications; and 10 Mbps, 100 Mbps, and 1 gigabit per second [Gbps]) for LAN communications. Any existing data traffic on shared network segments would increase these network transfer times.
During peak work periods, operational workflow performance can slow to a crawl similar to what is experienced in larger cities when driving on major highway arteries during rush hour. This simple illustration identifies the primary cause for many remote client performance problems. Sufficient bandwidth is critical to support productive user workflow performance requirements.
File server configurations support query from the client applications. When selecting data from a file (coverage or shape file), the total file (file index for large spatial data file formats) must be delivered to the client for query processing. Data not required by the application is rejected at the client location. This accounts for the considerable amount of traffic overhead experienced by these communications.
ArcSDE client/server configurations support DBMS query processing on the server platform. The query processing includes locating the requested data and filtering that data so only the specific data extent requested by the client is returned over the network. If the client application requests a small volume of data (e.g., point data or a single parcel in a parcel layer), the resulting data transfer can be small and network transport time would improve accordingly.
Best practices are established for network configuration alternatives. Desktop applications accessing file or DBMS data sources perform best in a local area network environment. Transaction-based services, or persistent Windows Terminal Server connections, provide reliable environments for processing over less stable wide area network connections.
Network Latency Considerations
The maximum bandwidth capacity used by a single user is limited by the total system transaction time. With standard client/server database display transactions, hundreds of data requests are sent to the server spread throughout the display transaction time (ArcGIS Desktop provides sequential requests for each layer in the display, completing each layer transaction before sending requests for the next display layer). A typical map display may have 10–20 data layers supporting the display analysis, which can translate to hundreds of sequential database transactions. Figure 6-9 shows a typical map display profile, showing the client desktop processing time, network transport time, and database processing time required to support a typical map display.
Bandwidth capacity is typically measured in megabits per second. During a typical local map display transaction, the total display response time can be 1.32 seconds. A total of 5 Mb of data must be transferred from the server to the client application to support a typical map display (see figure 6-8). The average bandwidth utilized by a single user on the LAN is 3.78 Mbps. Increasing the desktop network interface to 1 GB bandwidth would have limited user performance impact when accessing an ArcSDE data source.
Normal database access protocols are "chatty," which means a typical database query requires a large number of trips to and from the server to complete the client display transaction. There are many trips to and from the server (query transactions) for each layer in the map display. Figure 6-10 shows 200 query transactions are required to support a single map display.
Network latency can impact bandwidth utilization over long WAN distances. Latency is easy to measure, using a simple Windows command prompt (tracert "server host name"). Results provide the number of network hops and the associated network latency time for a single trip.
For LAN environments, network latency is very low (typically < 0.001 milliseconds per trip to the server). Many trips between the server and client have limited performance impact. The primary system latency contribution is client and server processing service times.
For longer WAN distances that involve several router hops, there can be a measurable network latency delay, and for chatty database protocols, network latency can have a measurable performance impact. In the example above, total transaction time over the WAN (including cumulative network latency) is 7.12 seconds. The maximum bandwidth utilized by a single user on this WAN connection is 0.71 Mbps. A single user would not experience performance improvements with increased WAN bandwidth. These days, many global WAN connections include satellite communication links. The fastest communication transfer is limited by the speed of light, which for very long distances will require a minimum bandwidth latency that technology will not overcome. Good performance over WAN environments results from protocols that minimize trips (communication chatter) between the client and server platforms.
The total number of clients on a single network segment is a function of network traffic transport time (size of data transfer and network bandwidth) and the total number of concurrent clients. Only one client data frame can be transmitted over a shared network segment at any time.
With older switch technology, multiple transmissions on the same Ethernet network segment would result in collisions, which require another transmission to complete data frame delivery. Ethernet segments fail rapidly during saturation because of the rapidly increasing number of transmissions. Ethernet switches today include provide options for configuring shared segments in a full duplex mode, which when configured properly take advantage of switch buffer cache and improve transmission efficiency.Figure 6-11 shows multiple client sessions sharing the same network segment where each data exchange is represented by the small boxes.
Shared networks must adjust traffic flow to accommodate random transmission arrival times. Concurrent transactions must wait for network connection, resulting in transmission delays. Delays will increase during heavy traffic loads as the network reaches saturation. Wait time is a function of network transport time (figure 6-8) and bandwidth utilization. Higher traffic per display and busier shared network segments contribute to longer wait times.
A GIS application may require 1 MB of spatial data, or up to 10 Mb of network traffic, to support a single map display as illustrated in figure 6-12.
Network Design GuidelinesFor many years, standard published guidelines were used for configuring network communication environments as shown in figure 6-13.
The network must be designed to support peak traffic demands. The amount of traffic varies based on the different types of applications and user work patterns. Standard guidelines provide a place to start configuring a network environment. Once the network is operational, network traffic demands should be monitored and necessary adjustments made to support peak user requirements.
Enterprise System ArchitectureGIS user workflows access applications, services, and/or data sources maintained within the enterprise data center.
Network connections within the local LAN infrastructure can normally be adjusted to accommodate peak traffic loads. Remote WAN and Internet connections often present constraints that must be addressed in the system design, and may limit software technology deployment options.
Data Center and Remote site service connections identify bandwidth constraints that must be evaluated during the system design.
Figure 6-15 provides an overview of the CPT Calculator highlighting the network performance analysis components.
Many network administrators establish and maintain metrics on network utilization, which help them estimate increased network demands when planning for future user deployments.
The CPT Design tab computes display response times for each workflow, based on total of all system component service times and queue times during peak system loads.
Figure 6-18 provides CPT Calculator design solution for two standard ESRI workflows.
Figure 6-19 provides a workflow performance summary overview of common ArcGIS Desktop and ArcGIS Server deployment patterns.
Figure 6-20 provides an overview of the standard network design performance factors.
Figure 6-21 provides an overview of the Capacity Planning Workflow tab highlighting workflow display chatter, client display traffic, and database traffic columns used by the CPT Design tab to complete an Enterprise level network suitability analysis.
Figure 6-22 provides an overview of the CPT Lookup table use for traffic adjustments based on data source selection.
The following video provides an overview of the CPT Calculator network traffic functions. The video also provides an overview of the CPT Design User Requirements Module and shows how the CPT Design completes the network suitability analysis.