Question

Difficulty: HardDNS Infrastructure and Record Types

A network systems engineer is troubleshooting client connection behavior for an enterprise Voice over IP (VoIP) deployment. Telephony endpoints issue a DNS query to discover available Session Initiation Protocol (SIP) servers for the domain `voip.example.com`. The engineer executes a `dig` command from a test workstation and receives the following response:

text
;; QUESTION SECTION:
;_sip._tcp.voip.example.com. IN SRV

;; ANSWER SECTION:
_sip._tcp.voip.example.com. 3600 IN SRV 10 60 5060 pbx1.voip.example.com.
_sip._tcp.voip.example.com. 3600 IN SRV 10 20 5060 pbx2.voip.example.com.
_sip._tcp.voip.example.com. 3600 IN SRV 20 100 5060 pbx3.voip.example.com.

Based on the RFC-standard evaluation rules for DNS SRV records, which of the following statements accurately describes how client traffic will be distributed across these servers under normal operating conditions?

  1. A
    Clients will direct all initial requests to pbx3.voip.example.com because it has the highest priority value (20).
  2. Clients will attempt connection to pbx1.voip.example.com approximately 75% of the time and pbx2.voip.example.com 25% of the time, keeping pbx3.voip.example.com as a standby backup.Answer
  3. C
    Clients will round-robin evenly across all three servers because DNS queries use UDP port 53 by default without evaluating weight fields.
  4. D
    Clients will establish primary connections to pbx3.voip.example.com over TCP port 5060 while using UDP port 53 to load balance between pbx1 and pbx2.

Answer

Clients will attempt connection to pbx1.voip.example.com approximately 75% of the time and pbx2.voip.example.com 25% of the time, keeping pbx3.voip.example.com as a standby backup.
DNS SRV records (RFC 2782) utilize two fields for server selection: Priority and Weight. Clients must attempt target hosts starting with the lowest numerical Priority value. Here, `pbx1.voip.example.com` and `pbx2.voip.example.com` both have a Priority of 10, making them preferred over `pbx3.voip.example.com` (Priority 20). Among targets with equal priority, clients select targets proportionally based on their Weight values. The combined weight for Priority 10 targets is 60+20=8060 + 20 = 80. Thus, `pbx1` receives 6080=75%\frac{60}{80} = 75\% of initial connection attempts and `pbx2` receives 2080=25%\frac{20}{80} = 25\%. Server `pbx3` will only be contacted if both Priority 10 servers fail.

Step-by-Step Solution

1
Evaluate the Priority field in the SRV record output
Servers pbx1 and pbx2 have a Priority value of 10, while pbx3 has a Priority value of 20.
Per RFC 2782, clients must attempt to contact target host with the lowest numbered priority first. Therefore, pbx1 and pbx2 are preferred primary targets, and pbx3 serves as a secondary backup target.
2
Calculate load balancing proportions using the Weight field for equal-priority targets
Total weight for Priority 10 targets = 60 (pbx1) + 20 (pbx2) = 80.
When multiple targets have the same priority value, clients distribute traffic probabilistically according to relative weight ratios.
3
Determine exact traffic allocation percentages for pbx1 and pbx2
pbx1 allocation = 60 / 80 = 75%; pbx2 allocation = 20 / 80 = 25%.
Dividing each server's weight by the combined weight sum of that priority group determines the expected connection ratio.

Key Concept

DNS SRV Record Structure and Priority/Weight Traffic Distribution
Rate this question