In Oracle Solaris, quality of service (QoS) is obtained more easily and dynamically by managing network resources. Network resource management is comparable to creating dedicated lanes for traffic. When you combine different resources to provide to the specific types of network packets, those resources form a network lane for those packets. Resources can be assigned differently for each network lane. For example, you can allocate more resources to a lane where network traffic is the heaviest. By configuring network lanes where resources are distributed according to the actual need, you increase the system's efficiency in processing network packets. For more information about network lanes, see Overview of Monitoring Network Traffic Statistics of Datalinks and Flows.
By using network resource management, you can isolate, prioritize, track, and control data traffic on an individual system without the complex QoS rule definitions.
Network resource management is helpful for the following tasks:
Provisioning the network
Establishing service-level agreements
Diagnosing security problems
The following network resources are used to increase the system's efficiency in processing packets:
NIC rings – If a NIC supports ring allocation, its transmit and receive rings can be dedicated for use by datalinks. For more information, see Managing NIC Rings.
CPU pools – Pools of CPUs are created and associated with specific zones. These pools can be further assigned to datalinks to manage the network processes of their associated zones. For more information, see Managing Pools and CPUs.
CPUs – On a system with multiple CPUs, you can dedicate a given number of CPUs for specific network processing. For more information, see Managing Pools and CPUs.
Network resources on a system can be managed by using either datalink properties or flows.
Managing network resources by using datalinks improves the system's efficiency in processing packets. You can allocate resources when you create the link. Alternatively, you can allocate resources to a datalink, for example, after studying resource usage over time and determining how to better allocate the resource. By allocating network resources, you can decide the amount of a given resource can be used for the networking processes. The procedures for allocating resources apply to the virtual network as well as the physical network. For more information about datalink properties and how to configure them, see Managing Network Resources by Using Datalink Properties.
A flow is a customized way of categorizing network packets based on a single attribute or a combination of attributes. Flows help you to differentiate different services on the same datalink. The attributes that serve as the basis for creating flows are derived from the information in a network packet's header. After setting datalink properties for network resource management, flows can be used to further control how resources are used to process network packets. Flows alone can also be used to manage network resources without setting datalink properties.
Using flows for managing resources involves the following steps:
Creating a flow based on a single attribute or a combination of attributes.
Customizing a flow's use of resources by setting properties that pertain to network resources. Currently, bandwidth, priority, and rank properties can be associated with flows.
For more information about configuring flows, see Managing Network Resources by Using Flows.