목록전체 글 (102)
Automotive Software
이더넷 스택을 개발할 때 주로 와이샤크나 동일한 라이브러리를 사용하는 tcpdump를 사용하게 되는데, 이들 툴이 없이 소프트웨어를 테스트하다 보면 당혹스러운 경우가 종종 발생하게 된다. 그중 한 경우가 와이어샤크와 같은 모니터링 툴을 사용하여 테스트를 할 경우에는 잘 받아지던 이더넷 패킷이 모니터링 툴을 실행하지 않으면 어찌 된 일인지 받아지지 않는 경우이다. 이유야 다양하겠지만, 대부분의 경우 해당 수신 프레임상에 결함이 있어 최하위단인 NIC에서 아예 받아들이지 않는 경우인데, 예를 들어 MAC 주소가 11:22:33:44:55:66인 NIC에 목적지 MAC 주소를 22:33:44:55:66:77로 작성한 이더넷 프레임을 보낼 경우 당연히 이는 NIC에서 거절된다. 그런데 왜 와이어샤크를 구동한 상..
와이어샤크에서는 이더넷 프레임의 분석을 위해 두 종류의 필터가 제공되는데, 애플리케이션상에 표시되는 프레임을 제한함으로써 필터링 기능을 제공하는 디스플레이 필터와 실제 네트워크 레벨에서 부하를 줄여주기 위해 캡처링되는 프레임을 제한함으로써 필터링 기능을 제공하는 캡처 필터가 있다. 캡처 시점에 상관없이 적용 가능한 디스플레이 필터의 경우, 애플리케이션 상단에 위치한 디스플레이 필터 입력부에 원하는 필터 문법을 입력하면 된다. 필터링 조건은 기본적으로 아래와 같이 괄호와 관계연산자를 사용하여 구현하며, 캡처 필터와 달리 '.' , '=='와 같은 연산자를 사용하여 필터의 로직을 서술한다. (ip.addr==192.168.1.1||ip.addr==192.168.1.2) && not tcp && (udp.po..
체크섬은 왜 필요한가? 체크섬은 네트워크상에서 뿐만 아니라 플래시 메모리와 같은 저장장치상에서의 데이터 일관성을 확인하기 위한 수단으로 사용된다. 네트워크의 경우 대부분 데이터 전송 시에 발생되는 에러(예, 비트 손실 또는 중복)로 인해 일관성을 해치게 되는데, 프로토콜 내 특정 주소에 할당된 체크섬 영역에 정의된 범위만큼의 체크섬 값을 송신부에서 먼저 계산 후 기록하고, 수신부에서 동일한 공식으로 계산된 체크섬값과의 일치여부를 확인함으로써 일관성을 검증하게 된다. 저장장치상에서는 장치상의 오류(예, 메모리 셀 오류)로 인해 일관성을 해치는 경우가 대부분인데, 방식에는 차이가 있으나 데이터 기록 전 일관성 확인이 필요한 바이트 스트림의 마지막 부분에 체크섬값을 계산하여 추가하고, 데이터 기록 후 읽어 들..
많은 네트워크 프로토콜은 데이터 완결성 또는 일치성을 검증하기 위해 체크섬을 사용하는데, IP 계층의 경우 와이어샤크에서는 기본적으로 체크섬 오프로딩으로 인한 혼란을 회피하기 위해 체크섬에 대한 검증 기능이 비활성화되어 있다. 검증 기능 활성화를 위해서는 Edit -> Preferences -> Protocols -> IPv4에서 "Validate the IPv4 checksum if possible" option을 선택하면 된다.
이스케이핑 로봇 프레임워크 테스트 데이터에서 이스케이핑 문자는 역슬래시 (\) 이며, 추가적으로 내재 변수인 ${EMPTY}와 ${SPACE}가 이스케이핑으로 사용될 수 있다. 특수 이스케이핑 문자들 My Esacpe Log \$ \@ \& \% \# \= \| \\ Log This is another example.\nHow to form the escape sequences\r \tA Tab given 빈값을 인자값으로 전달 : 역슬래시 또는 ${EMPTY} 키워드 사용 *** keywords *** My EmptyValues [Arguments] ${arg1} ${arg2} Log First argument : ${arg1}, Second argument : ${arg2} *** test cases..