Implementation and Evaluation of Authorized Access LAN Sockets Using Pppoe
Total Page:16
File Type:pdf, Size:1020Kb
Implementation and Evaluation of Authorized Access LAN Sockets Using PPPoE Hideo Masuda, Michio Nakanishi, Masahide Nakamura, Mio Suzuki Informedia and Education Division, Cybermedia Center, Osaka University 1-30 Machikaneyama, Toyonaka, Osaka, 560-0043 Japan. Telephone: +81 6 6850 6076, FAX: +81 6 6850 6084, E-mail:[email protected] our network Abstract Server The Internet This paper presents an integrated method to achieve au- thorized access on LAN sockets in a campus network. The LAN sockets PPPoE key issues of our method are user authentication and user server tracking. We adopt PPPoE (Point-to-Point Protocolover SwitchingHUB Ethernet) for the user authentication, and integrate IDENT mechanism on the PPPoE server for the user tracking. We conduct performance evaluation with respect to transfer rate and CPU usage. The evaluation shows that the pro- ClientPC ClientPC ClientPC ClientPC posed system achieves excellent performance for its deploy- client PCs(owned by user) ment cost. As a result, the proposed method could be a good candidate to add network connectivity in campus networks. Figure 1. Experimental environment achieves excellent performance for its deployment cost. 1 Introduction The system is actually working in the educational computer system in Cybermedia Center, Osaka University, also work- Rich network environment is a key to attract prospec- ing in a wireless LAN environment with IEEE802.11b. tive students to universities[1]. Recently, universities tend to provide students with LAN sockets in every classroom, 2 Implementing LAN sockets with PPPoE for fast and easy access to network resources. From the viewpoint of network administrators, however, it would be- Figure 1 shows an experimental environment of our sys- come an insecure hot bed of network crimes, unless users tem. The key issues for implementation of the target LAN are properly authenticated. sockets are (1) how to choose implementation variants of To cope with the problem, there are some experimen- the PPPoE, and (2) how to integrate the IDENT mechanism tal systems, which implement user authentication on LAN on the PPPoE. sockets (e.g. [2] [3]). In [2], PPTP (Point-to-Point Tunnel- ing Protocol [5]) is used for a secure LAN sockets. In [3], 2.1 Choosing implementation variants of PPPoE IP over SSL (Secure Socket Layer [6]) is used. Since both approaches are IP over IP fashion, they would suffer from heavy protocol overhead. There are two alternatives of the PPPoE server. In this paper, we have implemented and evaluated a new 1. implementation with userland (called user mode) system to achieve authorized access in an inexpensive man- ner, specifically, LAN sockets using PPPoE (Point-to-Point 2. implementation with OS kernel (called kernelmode ) Protocol over Ethernet [7]). The key features of the pro- posed system are user authentication with the PPPoE and The user mode is easy to be deployed. However, the user tracking with IDENT[11]. The proposed system can be user mode suffers from frequent context switching between implemented with inexpensive HUBs and a mid-class PC. kernel space and user space. Although the kernel mode We have conducted an experimental evaluation for the requires kernel reconfiguration, good performance is ex- proposed system from viewpoints of transfer rate and CPU pected. In this work, we have chosen both implementation usage. The evaluation shows that the proposed system variants, and conducted their comparative evaluation. Proceedings of the 2002 Symposium on Applications and the Internet (SAINT’02) 0-7695-1447-2/02 $17.00 © 2002 IEEE server Destination 133.1.gg.1:113 IDENT request for PORTs Destination 192.168.0.xx:113 eth0 133.1.gg.1:PORTs eth0 IP Masq IDENTd Destination 192.168.0.xx:PORT (IP Masquerade) NAT dummy0:xx (dummy I/F) NAT with 192.168.128.xx:113 Reply UserID IDENTd 192.168.0.xx:PORTc eth1 by looking up this table 192.168.0.xx:PORT(no change) eth1 (Reply UserID in relation to xx) Figure 3. Masq method Figure 2. NAT method incoming IDENT connection arrives at the TCP #113 port on the client PC, a program (call it program B, 2.2 Implementing newIDENT mechanism denoted by IDENTd in the figure) on PPPoE server re- sponds the IDENT protocol, since the IP masquerade The IDENT protocol [11] provides a means to deter- is used. The program B first identifies which client mine the identity of a user of a particular TCP connection. PC has requested the connection with the pair of port When a client tries to access to a server (e.g., proxy, smtp, numbers, by looking up the IP masquerade informa- etc) with IDENT configuration, the server sends the client tion. Then, the program B responds userID that was IDENT request with a pair of local/remote port numbers. used for PPPoE authentication in the identified client Then, the client responds user’s identity (login name) to the PC. server. However, the original IDENT protocol cannot al- ways guarantee reliable response under the LAN socket en- vironment in campus. Since clients connected to the socket 3 Experimental Evaluation are managed by students themselves, not all clients have the IDENT feature. Moreover, malicious configuration is pos- We choose the following points as metrics of the perfor- sible. mance evaluation. Therefore, we try to implement a more reliable IDENT 1. Data transfer rate of the PPPoE server mechanism, by combining the original IDENT protocol with PPPoE authentication. The IDENT protocol uti- 2. CPU usage of the PPPoE server lizes TCP port #113 as well as the TCP network connec- tion. Our key idea is to let the PPPoE server intercept As shown in Table 1, we have prepared 3 different PCs IDENT requests to the port #113 and respond userID with for the PPPoE server, 4 different PCs for clients. An ftp PPPoE authentication. server is used for measuring network performance. For the To achieve the mechanism, we propose and implement PPPoE server, we have measured the performance of user two new methods. The one is a method using NAT (Net- mode, kernel mode and router mode (without PPPoE). We work Address Translation), called NAT method. The other have also added the proposed IDENT mechanisms to the is with IP Masquerade, called Masq method. kernel mode and evaluated their performance. As for clients, we have measured performance effect 1. NAT method when multiple clients are connected, specifically in the fol- Figure 2 shows the outline of the NAT method. When lowing ways: (a) Client A only, (b) Clients A and B, (c) an incoming connection request arrives at TCP #113 Clients A,B and C, (d) all of Clients A, B, C and D. To port on a client PC, the client performs NAT (Network simulate network load, we have prepared a large file (size Address Translation), and accepts the connection as if of 10MByte) on the ftp server, and performed file transfer it were a connection to a virtual interface (denoted by with ftp from the ftp server to the clients. dummy I/F in the figure) on the PPPoE server prepared for each PC client. In the virtual interface, we bind 3.1 Data Transfer Rate a program (call it program A, denoted by IDENTd in the figure) to respond the IDENT protocol on the TCP First, we have measured the data transfer rate in the fol- #113 port. The program A responds userID with PP- lowing way. PoE authentication for any pair of port numbers. 1. On each client PC, repeat the ftp five times. 2. Masq method Figure 3 describes the Masq method. By applying IP 2. Under the traffic, obtain the followings values on the masquerade technique to the outgoing connection from PPPoE server at time Ò, with sleep 1 interleaving: ac- ad×Ü the client PC, we force the source address of the con- cumulated data size exchanged ( Ò ), accumulated acÔÙ nection to be the IP address of the PPPoE server. If an CPU time ( Ò ). 2 Proceedings of the 2002 Symposium on Applications and the Internet (SAINT’02) 0-7695-1447-2/02 $17.00 © 2002 IEEE Table 1. Specification of PCs ftp server ServerA ServerB ServerC ClientA ClientB ClientC ClientD CPU PentiumII PentiumIII PentiumIII Pentium Celeron Celeron Celeron Pentium 450MHz 1GHz 550MHz 233MHz 633MHz 633MHz 300MHz 266MHz Memory 128MB 256MB 896MB 128MB 256MB 256MB 192MB 128MB NIC Intel i8255x Intel i8255x SiS 900 Intel i8255x 3CCFE575 OS Linux2.4.2ac13 Linux2.4.2ac22+ kernelized pppoed[9] Linux2.4.2ac22 Win2k Pro Win98 Win98 Linux2.4.2ac22+ rp-pppoe[8] (kernel)[9] RASPPPOE 0.95b[10] 20 25000 Transfer rate(y1) 20 Interrupts(y2) Fastest client(DHCP) Fastest client(k-PPPoE) 20000 Faster 2 clients(DHCP) Faster 2 clients(k-PPPoE) 15 Faster 3 clients(DHCP) Faster 3 clients(k-PPPoE) 15 4 clients(DHCP) 4 clients(k-PPPoE) 15000 10 10 10000 5 Fastest client(u-PPPoE) 5000 5 Faster 2 clients(u-PPPoE) y1: Transfer rate [MB/s] y2: Interrupts [times/sec] Transfer rate [MB/s] Faster 3 clients(u-PPPoE) 4 clients(u-PPPoE) 0 0 0 5 10 15 20 25 30 35 40 0 200 400 600 800 1000 Time [sec] CPU speed [MHz] Figure 4. Data transfer rate of Server A Figure 5. Maximum transfer rate 15 Ò DÌ Ê 3. Compute the data transfer rate at time ( Ò )as Server A without IDENT ad×Ü ad×Ü Ò ½ Ò Server A with IDENT using NAT DÌ Ê = follows: Ò 14 acÔÙ acÔÙ Server A with IDENT using Masq Ò ½ Ò Server B without IDENT Server B with IDENT using NAT Figure 4 shows the transfer rate and the number of inter- 13 Server B with IDENT using Masq ruptions w.r.t.