Cisco Local Director™ An Implementation Perspective Presented by Louis Rael Louis.Rael@gtedc.gte.com GTE Directories Corp. GTE Directories Corporation 12/01/97 1 Opening Remark “You have to be professional in approach, design, and implementation regardless of your business constraints” GTE Directories Corporation 12/01/97 2 Goal “Fulfillment of HTTP requests with multiple servers using one IP address and one URL” - Jan., 1996 GTE Directories Corporation 12/01/97 3 Round Robin DNS Approach The ability to access multiple servers with one Domain Name e.g. Cisco.com T. Kwan, R. E. McGarth, D. A. Reed “NCSA’s World Wide Web Server: Design and Performance” Computer 1995, pp. 68-74 E. D Katz, Eric Dean, M McGarth, “Scalable HTTP Server: The NCSA Prototype” Computer Networks and ISDN Systems, Vol. 27, 1994, pp. 155-164 Bind 4.9.2 by Godsil, Joseph M. National Center for Supercomputing Applications Networking Development Team bind.492.ncsa.patch Implemented on a HP-UX 9.x OS GTE Directories Corporation 12/01/97 4 DNS Production Environment Round Robin DNS Remote user 10Mb Ethernet Sun Server 1000 100Mb FDDI T3 URL’s serviced superpages1.gte.net 10Mb Ethernet T3 superpages2.gte.net superpages3.gte.net yp1.gte.net yp2.gte.net 24X7 Operation GTE Directories Corporation yp3.gte.net 12/01/97 5 Issues of DNS Implementation Reinitialize Domain Name Server (DNS) 45 minutes to 2 hours from time of removal of WKS from DNS Other ISP’s cached the “A Rec’s” for faster response i.e. AOL, CompuServe, ... Set TTL to 15 minutes Lacked responsiveness to business and development needs GTE Directories Corporation 12/01/97 6 Potential Solution Networkers - Network the World Dallas Convention Center May 7-9, 1996 Distributed Director: Scalable Network Services by Traina, Paul Product release date July, 1996 GTE Directories Corporation 12/01/97 7 Local Director Features 45-MBPS throughput combined total of 8000 virtual IP addresses and real servers 200Mhz Pentium Pro Processor 32 MB RAM two 10 Mb Ethernet adapters, optional 100 Mb Ethernet Optional hot stand-by fail over mechanism GTE Directories Corporation 12/01/97 8 Test Methodology Simulate production environment Logical Topology Map Physical Topology Map Map out Local Director configuration Test Local Director through put Test the load balance feature GTE Directories Corporation 12/01/97 9 Test Environment Web Browsers Performix/CS Driver HP J200 DNS Server Windows 95 Cisco 4000 Hub Windows 3.11 HP PC Win NT 4.0 Cisco 4000 SGI Indy Irix 6.2 Local Director Web Servers Hub Sun Sparc Server 1000E 10 Mb Ethernet GTE Directories Corporation 12/01/97 10 Test LD Throughput Simultaneously request different HTML pages to eliminate server caching Client simulation 1, 5, 10, 15, 20,26,24 10 BaseT shared Hub connection Performix/CS capture playback tool GTE Directories Corporation 12/01/97 11 Lessons Learned Do the physical & logical map first Use a “Clean Room” approach to testing Start from the bottom up in network problem solving using the OSI model Three days for set-up and testing is tight “If you can afford it, wait until the product matures to avoid being the rev. 1.0 pioneer” GTE Directories Corporation 12/01/97 12 Local Director Configuration : Local Director Version 1.5.5 syslog output 20.7 no syslog console hostname ld_yp interface ethernet 0 100basetx interface ethernet 1 100basetx mtu 0 1500 mtu 1 1500 no ping-allow 0 no ping-allow 1 ip address 207.117.125.229 255.255.255.240 route 0.0.0.0 0.0.0.0 207.117.125.238 1 route 0.0.0.0 0.0.0.0 207.117.125.238 1 no rip passive no failover telnet 206.251.124.4 255.255.255.0 telnet 207.117.125.254 255.255.255.255 telnet 192.168.1.1 0.0.0.0 no snmp-server contact no snmp-server location virtual 207.117.125.227 is real 207.117.125.226 is real 207.117.125.225 is real 207.117.125.232 is real 207.117.125.233 is real 207.117.125.235 is real 207.117.125.236 is GTE Directories Corporation weight 207.117.125.226 8 weight 207.117.125.225 8 weight 207.117.125.232 13 weight 207.117.125.233 13 weight 207.117.125.235 13 weight 207.117.125.236 13 timeout 207.117.125.226 15 timeout 207.117.125.225 15 timeout 207.117.125.232 15 timeout 207.117.125.233 15 timeout 207.117.125.235 15 timeout 207.117.125.236 15 bind 207.117.125.227 207.117.125.236 bind 207.117.125.227 207.117.125.235 bind 207.117.125.227 207.117.125.233 bind 207.117.125.227 207.117.125.232 bind 207.117.125.227 207.117.125.225 bind 207.117.125.227 207.117.125.226 threshold 207.117.125.226 30 threshold 207.117.125.225 30 threshold 207.117.125.232 30 threshold 207.117.125.233 30 threshold 207.117.125.235 30 threshold 207.117.125.236 30 12/01/97 13 Dissected Configuration [no] syslog {host|console} ip no syslog console do not log data to the system console syslog output facility.level syslog output 20.7 Logs messages to the syslog server i.e. a UNIX server using UDP connection from the output LOCAL4(20) in debug mode (7) hostname newname hostname ld_yp Name of the given local director name interface ethernet unit {10baseT|100BaseTX|100full|auto} interface fddi unit interface ethernet 0 100basetx interface ethernet 1 100basetx configures the interface cards to the respective speeds GTE Directories Corporation 12/01/97 14 Dissected Config. Continued mtu unit vol mtu 0 1500 mtu 1 1500 sets the maximum transmission unit (MTU) value for the specified interface (unit) The default interface for ethernet is 1550 ip address ip [subnet_mask] ip address 207.117.125.229 255.255.255.240 Assigns an IP address to the local Director [no] route dest_net net_mask gateway [metric] route 0.0.0.0 0.0.0.0 207.117.125.238 1 route 0.0.0.0 0.0.0.0 207.117.125.238 1 Adds a static route to the IP routing table. Specified with the default dest_net and net_mask specified with all zeros (0.0.0.0). The next value is the optional distance metric defaulted to the value of 1 no rip passive disable RIP routing table updates. Note: use the ip route command if no rip is being used. GTE Directories Corporation 12/01/97 15 Dissected Config. Continued no failover[active] no failover Enable access to the optional fail over feature configures [no] telnet ip mask telnet 206.251.124.4 255.255.255.0 telnet 207.117.125.254 255.255.255.255 telnet 192.168.1.1 0.0.0.0 Adds authorized IP addresses and corresponding mask for Telnet access to Local Director (note: up to 16 telnet sessions are allowed) snmp-server contact text snmp-server location text snmp-server host ip_address no snmp-server contact no snmp-server location indicates no system administrator name or contact is supplied with the MIB II compliant SNMP agent. No facility location is supplied as well (Note: recommend that SNMP be supplied to operation personnel for proper notification) GTE Directories Corporation 12/01/97 16 Dissected Config. Continued [no] virtual virtual_id [virtual_port] [service-state] virtual 207.117.125.227 is Creates a virtual server to connect to the network. The service state is in service (is) Note: when using the command show virtual will show the state as being in-service (is), out-of-service(oos) [no] real real_id [real_port] [service-state] real 207.117.125.226 is Define a real server with the given IP address and the server satate, either in-service (is) or out-of-services (oos) [no] weight real_id number weight 207.117.125.226 8 weight 207.117.125.232 13 Defines the weighting factor given to each of the real servers, e.g. 8 has a smaller weight then 13 therefore the 125.226 server will receive less requests then the 125.232 server. GTE Directories Corporation 12/01/97 17 Dissected Config. Continued timeout real_id minutes timeout 207.117.125.226 15 Set the connection timeout for real_id machine. Connection types for example: Telnet sessions that are connected and idle for the default 15 minutes duration will be logged out Note: Every two minutes, Local Director will remove connections that have not been fully established through TCP handshaking [no] bind virtual_id real_id [real_id ...] bind 207.117.125.227 207.117.125.236 Associates a virtual server with one or more real servers. threshold real_id connect_failures threshold 207.117.125.226 30 Sets the value of the real_id to the number of connect_failures before the real_id is taken out of service. Note: after a number of minutes (set by the retry command) have passed the server is placed into TEST mode. If during the testing state a connection is established then Local Director will place the real_id to IS (in-service). GTE Directories Corporation 12/01/97 18 New Topology HTTP Server with Database back-end Small queries large results yp1 ... ypn OC-3 Hub OC-12 sp1 ... spn Local Director cg1 ... cgn Local Director Static HTTP Servers small queries small results 100 BaseT GTE Directories Corporation Hub 12/01/97 19 Interoperability 2 - SGI Challenge L series 1 - SGI Challenge DM 2 - SGI Challenge S series 2 - Bay Network 100 BaseT hubs 2 - Cisco Local Director 4 - Origin 200 4 - Origin 2000 1 - Data Vault 1 - SGI O2 GTE Directories Corporation 12/01/97 20 Closing Remark “You have to be professional in approach, design, and implementation regardless of your business constraints.” GTE Directories Corporation 12/01/97 21 Team Approach Team Members Biggs, Bob Broadon, LC Donohoo, Malcolm Rael, Louis Ruten, Stephen Ward, Matt Witzel, Ronnie GTE Directories Corporation Bob.Biggs@gtedc.gte.com LC.Broaden@gte.net Malcolm.Donohoo@gtedc.gte.com Louis.Rael@gtedc.gte.com Stephen.Ruten@gtedc.gte.com Matthew.Ward@gte.net 12/01/97 22 Questions & Answers ? ? ? Pizza! Hold the Anchovies!!! GTE Directories Corporation 12/01/97 23