Friday, August 13, 2010

DNS titbits -- > a view from SAE.

Starting from selecting MME, SGW,PGW we need DNS in a LTE network.
Offcourse to select the components out of SAE also we use DNS. eg to select HSS,PCRF.


This is the first time I got an opportunity to dive into this pool. Still now I thought it just a jug of water. (had a prespective - simple NAME to IP conversion.. Why do we need a dedicated server for this? We type google.com in browser it just goes and gets the IP. Is there any difficulty in this? Are there any parameters associated with this selection procedure?).
Got a chance to look into the DNS RFC.


Just captured a DNS packet while writing this.


Here is some vital information on the Domain Name server that is often communicated by most of the components in LTE.

No.     Time        Source                Destination           Protocol Info
      1 0.000000    192.168.0.100         192.168.1.1           DNS      Standard query A www.google.co.in

Frame 1 (76 bytes on wire, 76 bytes captured)
Ethernet II, Src: IntelCor_56:02:7f (00:1c:bf:56:02:7f), Dst: Cisco-Li_e1:67:c9 (00:25:9c:e1:67:c9)
Internet Protocol, Src: 192.168.0.100 (192.168.0.100), Dst: 192.168.1.1 (192.168.1.1)
User Datagram Protocol, Src Port: 50937 (50937), Dst Port: domain (53)
Domain Name System (query)
    Transaction ID: 0xb562
    Flags: 0x0100 (Standard query)
        0... .... .... .... = Response: Message is a query
        .000 0... .... .... = Opcode: Standard query (0)
        .... ..0. .... .... = Truncated: Message is not truncated
        .... ...1 .... .... = Recursion desired: Do query recursively
        .... .... .0.. .... = Z: reserved (0)
        .... .... ...0 .... = Non-authenticated data OK: Non-authenticated data is unacceptable
    Questions: 1
    Answer RRs: 0
    Authority RRs: 0
    Additional RRs: 0
    Queries
        www.google.co.in: type A, class IN
            Name: www.google.co.in
            Type: A (Host address)
            Class: IN (0x0001)


Type A, --- > hmm yes this will return a IP.. 
is there any other type available?
Yeah there are numerous such type of records available for selection process.



Naming Authority Pointer (NAPTR) DNS Resource Record which is saw is most widely used.

                               1  1  1  1  1  1
            0  1  2  3  4  5  6  7  8  9  0  1  2  3  4  5
          +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
          |                     ORDER                     |
          +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
          |                   PREFERENCE                  |
          +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
          /                     FLAGS                     /
          +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
          /                   SERVICES                    /
          +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
          /                    REGEXP                     /
          +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
          /                  REPLACEMENT                  /
          /                                               /
          +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
Basically this is to select bigger domains/Protocols, which inturn narrows down to select the clients using a SRV record.

RFC 2915 is too good in explaining this with examples.

IN NAPTR 100  100  "s"   "http+I2R"   ""    _http._tcp.foo.com.

The above is a type of NAPTR record defined in server.


Service record is a category of data in the DNS specifying the location of servers for specified services. 
So basically the components in SAE should be capable to select these based on the priority/weight/order.

SRV record has the form:
_service._proto.name TTL class SRV priority weight port target




_http._tcp.foo.com. 86400 IN SRV 10 60 5060 bigbox.example.com

What is this "s" flag ?
It points to a SRV record

other flags "A", "U", and "P",
 "U" flag :- Sw development need to be very careful in handling this,
Its output is not a DNS lookup. interesting... will be used for converting phone number to a domain name. The Application should not again try with that domain-name and get the same phone-number.. WoW we will be in a loop with no answer..
This doest seem to be of any help in LTE. Lets stay away from it.

This narrows down to a box name "bigbox.example.com" , which offcourse can return a IP if A record matches.

No comments:

Post a Comment