R&D/VRouter 14

VNS 업데이트

1) 프로세스 kill 시 pid.kill() 대신에 os.kill(p.pid, signal.SIGKILL) 로 변경. 이는 kill -9 효과를 발휘함 2) Popen(cmd, shell=False) 의 의미 cmd 를 list 형태로 적으면 shell=False를 쓰고 cmd 를 하나의 string으로 적으면 shell=True를 써야 한다. cf) shell=True로 불러진 명령이 새로운 프로세스를 띄우는 거면 실제로는 2개의 프로세스가 뜨게 된다. 하나는 쉘이고 하나는 뜨우고자 한 프로그램이다. 따라서 스크립트가 아닌 프로세스를 띄우는거면 cmd를 리스트 형태로 만들고 shell=False로 하여서 실행하여야 한다. 나중에 죽을때 2개를 죽여야 하는가? 하나를 죽여야 하는가를 고생하게 되지 않기..

R&D/VRouter 2009.12.17

libvirt 패키징

libvirt 관련 패키지 종류 파일목록의 진한색으로 칠해진 파일들은 수정된 파일임 1) libvirt0: libvirty for interfacing with different virtualizaiton system (libvirt.so.0.6.1 파일 관련) 파일 목록 (Language : text) /etc/ld.so.conf.d/libvirt.conf /usr/local/lib/libvirt.so.0 /usr/local/lib/libvirt.so.0.6.1 /usr/local/share/doc/libvirt0/AUTHORS /usr/local/share/doc/libvirt0/NEWS.gz /usr/local/share/doc/libvirt0/README /usr/local/share/doc/li..

R&D/VRouter 2009.12.08

olive에서 fxp 인터페이스가 라우팅이 안될 때

olive 를 설치하고 두 대의 라우터를 테스트하면 두 라우터 간에 ping 은 잘 된다. 그런데 OSPF, ISIS를 설정하고 나서 routing table 이 업데이트가 되지 않는다. 이는 fxp 인터페이스가 multicast traffic 을 제대로 처리하지 못하기 때문이다. 가상머신의 fxp 드라이버 소스코드에서 multicast traffic을 drop 시키기 때문이다. 이를 해결하기 위해서는 hw/eepro100.c (Language : c)# static void nic_receive 함수의 /* TODO: check multicast all bit. */ assert(!(s->configuration[21] & BIT(3))); int mcast_idx = compute_mcast_idx(..

R&D/VRouter 2009.05.12

KVM 커널 설치

우분투 리눅스에서 KVM 의 지원을 받는 Virtualization 을 구현하기 위한 방법 0. 커널 컴파일을 위한 패키지 설치 패키지 설치 (Language : text) # apt-get install git-core kernel-package fakeroot build-essential ncurses-dev 1. KVM 지원 커널 받기 git는 CVS와 같은 소스코드 관리 프로그램으로 리눅스 커널은 git 를 이용해서 다운로드 가능하다. 커널 받기 (Language : text) # git clone git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm.git 2. KVM-USERSPACE 받기 kvm-userspace 받기 (Language : text)..

R&D/VRouter 2009.04.20