BigAdmin System Administration Portal
Solaris OS Networking

May 2006

Solaris OS Networking -- The Magic Revealed

This article by Sunay Tripathi discusses the networking advancements in the Solaris 10 OS, as well as the evolution of networking in previous releases. Topics include TCP, UDP, IP, the device driver framework, and tuning for performance.

Solaris OS Network Virtualization

We are determined to lead in the area of network virtualization. The upcoming project Crossbow is designed to provide the building blocks for utility computing by creating virtual stacks around any service (HTTP, HTTPS, FTP, NFS, etc.), protocol (TCP, UDP, SCTP, etc.), or Solaris Containers technology. The virtual stacks are separated by means of a H/W classification engine such that traffic for one stack does not impact other virtual stacks. Each virtual stack can be assigned its own priority and bandwidth on a shared NIC without causing performance degradation to the system or the service/container. The architecture dynamically manages priority and bandwidth resources, and can provide better defense against denial-of-service attacks directed at a particular service or container by isolating the impact to just that service or container.

FireEngine

"For the Solaris 10 release, we have turbo-charged the networking stack to deliver extremely high performance while improving the scalability across all platforms (SPARC and x86). Of course, the changes didn't happen overnight -- it took us two years to do the background research for vertically partitioning the workload using an IP classifier-based lock-less design." -- Sunay Tripathi, FireEngine Architect

This new architecture reduces the overheads of synchronization and cross communication between CPUs (a necessary ingredient for scaling across a very large number of CPUs). In simple terms, it means that we have improved the networking performance across small CPU configurations while maintaining the high scalability across large CPU configurations that the Solaris OS was well-known for.

For More Information


Other Advances in Networking Performance

Nemo

* 2006 Sun Microsystems Chairman's Award Recipients -- Solaris Software: Nemo (a.k.a. GLDv3)

GLDv3: This high-performance device driver framework has VLAN support and 802.3ad Link Aggregation support for off-the-shelf device drivers.

The following drivers are based on GLDv3 framework: bge, e1000g, xge, rge, ixge, and nge. Customers can have VLAN and link aggregation capabilities with these drivers on both SPARC and x86 platforms. IHVs can use this new interface instead of GLDv2 for network device driver development.

This framework can offer:

  • Greatly improved performance due to:
    • Direct function calls and packet chaining between IP and device driver
    • IP controlling the NIC and dynamically switching it between interrupt and polling mode
    • Lower CPU utilization
    • Use of advanced NIC features
  • VLAN support
  • 802.3ad Link Aggregation (trunking) support

For more information on Nemo:

Yosemite

The Yosemite project is aimed at improving Solaris UDP performance. The project is made up of various smaller projects, including UDP/IP merge, UDP hardware checksum offload, broadcast/multicast performance, socket-layer processing, and many others. The goal is to make the Solaris OS more competitive when compared to Linux when UDP is used as the transport protocol, especially for workloads sensitive to latency and/or throughput.

IPv6

With the Solaris 10 OS, IPv6 has been further enhanced to support 6to4 Router (RFC 3056), default address selection (RFC 3484), privacy extensions for stateless address autoconfiguration (RFC 3041), the new IPv6 Basic API (RFC 2553), and the new IPv6 Advanced API (RFC 2292).


Network Approachability


Clearview: Network Interface Coherence

OpenSolaris Project: Clearview
Clearview is a project to rationalize, unify, and enhance the way network interfaces are handled in the Solaris OS at the programmatic and administrative levels. While this sounds a bit opaque, the effects of ensuring that all network interfaces have these attributes are far-reaching and eminently practical. For example, as a result of Clearview, customers would be able to do the following (and more):

  • Observe all IP layer network traffic, including loopback, IPMP group and IP tunnel traffic.
  • Observe all IP layer network traffic flowing to and from a zone.
  • Administrate all network interfaces using dladm(1M).
  • Use VLANs and form link aggregations on all Ethernet devices.
  • Use IPMP with technologies such as DHCP and routing protocols.
  • Select names for network interfaces, easing migration of network configuration information between systems or zones, and markedly improving Dynamic Reconfiguration.

Network Auto-Magic

OpenSolaris Project: Network Auto-Magic
Simplifying and automating network configuration on the Solaris OS. There are six focus areas:
  • Overview and Component Interaction
  • State Machine
  • Event Handler
  • Profiles
  • Network Service Model
  • Dependencies with the rest of the system

Discussions

Other Resources

BigAdmin