![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbDPVK5%2FbtryNkE03JV%2FzzLQVwHOzP5i3bcKi23YPk%2Fimg.png)
이번 포스트에서는 Network Layer에 대해 다루도록 하겠습니다. Network Layer의 주요 역할 : 패킷 전달(Packet Forwarding) : 종단 간(END-TO-END)의 패킷 전달 라우팅(Routing) : 종단 간 패킷을 전송할 때, 라우팅 프로토콜을 기반으로 가장 효율적인 경로를 선택하여 패킷을 전송할 수 있게 함. 논리적인 주소(Logical Address) 사용 : IP 주소를 사용하여 사용자 데이터를 목적지 장치까지 전달. Network Layer 논리 주소 사용시의 동작 과정 : Transport 로부터 segment를 전달 받음 전달 받은 세그먼트를 캡슐화(헤더를 붙이는 작업)해서 데이터그램으로 바꿈 network -> datalink -> physical -> phy..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbPZU7e%2FbtryEtPfXEX%2FzLB3aVA2wg4wsflzepYkMk%2Fimg.jpg)
이번 포스트에서는 Network Core(라우터의 집합)에 대해 다루도록 하겠습니다. 데이터는 어떻게 인터넷을 통해 전송되었을까? 그 해답은 바로 Circuit switching과 Packet switching입니다. Circuit switching 이란? : circuit switching은 유일한 경로를 통해 데이터를 전송합니다. 즉, 목적지까지 가는 경로가 단 하나뿐인 것입니다. 통신하기 전에 먼저 연결을 해야 하며 연결이 되고 나면 출발지(source)로부터 목적지(destination)까지 도착하는데 사용되는 회선 전체를 독점(dedicated)하기 때문에 다른 사람은 끼어들 수 없습니다. Circuit switching 의 특징 : 전용 리소스 (공유 X) 일정한 성능 Call setup 요구..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FckyLrs%2FbtryBoHnKr8%2FuudzPhMkbZYvD9dKSfa111%2Fimg.jpg)
이번 포스트에서는 네트워크의 전송(Transport) 계층에서 사용하는 프로토콜인 TCP와 UDP에 대해 다루도록 하겠습니다. TCP 이란? : TCP는 Connection-oriented service(연결형 서비스)를 기반으로 하고 있습니다. 즉, 데이터를 전송하는 데에 있어 높은 신뢰성을 보장하고 있습니다. TCP의 특징: In-order byte-stream(순서대로 받기) Flow control(흐름 제어) : 데이터를 송신하는 곳과 수신하는 곳의 데이터 처리 속도를 조절하여 수신자의 버퍼 오버플로우를 방지하는 기법 Congestion control(혼잡 제어) : 네트워크 내의 패킷 수가 넘치게 증가하지 않도록 방지하는 기법 높은 신뢰성 보장 전이중(Full-Duplex), 점대점(Point ..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F86Q6h%2FbtryyXqvSPP%2F1EvXgwQKrDGL4zQYh5zxLK%2Fimg.png)
이번 포스트에서는 TCP/IP의 Protocol Model에 대해 다루도록 하겠습니다. TCP/IP Protocol Model : 네트워크의 복잡한 기능을 세부적으로 나눠서 처리하게 해주는 모델 TCP/IP 프로토콜 모델의 구성은 다음 그림과 같이 총 5개의 Layer로 구성되어 있습니다. 각 층(Layer)마다 다른 기능을 제공하고 있습니다. L5(Application) : 사용자(응용프로그램)가 OSI 환경에 접근할 수 있도록 서비스를 제공한다. L4(Transport) : 논리적 안정과 균일한 데이터 전송 서비스를 제공함으로써 종단 시스템(End-to-End)간에 투명한 데이터 전송을 가능하게 한다. L3 (Network) : 네트워크 연결을 설정, 유지, 해제하는 기능 및 경로 설정(Routing..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FmqVxQ%2Fbtryu9EId24%2F41KRzctNEkU3AghCBCycYK%2Fimg.png)
이번 포스트에서는 Antialiasing에 대해 다루도록 하겠습니다. Antialiasing : 컴퓨터 그래픽스는 디지털 단위로 이미지를 출력하기 때문에 어쩔 수 없이 Aliasing(계단 현상)이 발생합니다. Antialiasing은 이를 제거 또는 완화하기 위해 제작된 기술입니다. 대표적인 Antialiasing 기술로는 Unweighted Area Sampling과 Weighted Area Sampling이 있습니다. Unweighted Area Sampling (동일 가중치 샘플링) : 영역 내부 모든 곳에 동일한 가중치를 부여하는 방법 동일 가중치 샘플링은 다음과 같은 순서로 진행됩니다. 하나의 픽셀을 가로, 세로로 3등분 해서 9개의 서브 픽셀로 만든다. (Supersampling) 선분 스캔..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcqdDGB%2FbtryvvtMFBj%2FwCUgV6mFvkiFfkt3snU8gk%2Fimg.png)
이번 포스트에서는 여러 Clipping Polygons Algorithm에 대해 다루겠습니다. Sutherland Hodgman Algorithm : 오른쪽, 아래쪽, 왼쪽, 위쪽 경계에 대해 차례대로 클리핑해주는 것입니다. 해당 알고리즘을 좀 더 상세하게 보자면 다음 그림과 같습니다. Case 1 : Inside -> Inside, p 꼭지점을 새로운 꼭지점으로 변경 Case 2 : Inside -> Outside, i 교차점을 새로운 꼭지점으로 변경 Case 3 : Outside -> Outside, 변화 없음 Case 4 : Outside -> Inside, i 교차점 및 p 꼭지점을 새로운 꼭지점으로 변경 그러나 Sutherland-Hodgman Algorithm을 사용하여 오목 다각형을 처리하면..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fx0IXP%2Fbtryp33IrQh%2FRREyAEEWYswS7eFbDbesl0%2Fimg.png)
이번 포스트에서는 리눅스의 명령어인 whoami, who, clear에 대해 다루도록 하겠습니다. whoami : 현재 로그인한 사용자의 ID를 출력하는 명령어 실행 화면 : who : 호스트에 로그인한 사용자의 정보를 출력하는 명령어 주요 옵션 : -a : (--all) 전체 정보 출력 -b : (--boot) 마지막 시스템 부팅 시간 출력 -d : (--dead) 죽은 프로세스 출력 -q : (--count)로그인한 사용자와 사용자 수를 모두 출력 -s : (--short) 이름, 행, 시간 정보만 출력 -t : (--time) 마지막으로 변경한 시스템 시간 출력 실행 화면 : clear : 터미널의 내용을 모두 지우는 명령어 실행 화면 :
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCvXeX%2Fbtryph8Ymqg%2Fg7qGRFFIF3Yf3CLSpPtpxK%2Fimg.png)
이번 포스트에서는 리눅스의 명령어인 date, hostname, uname에 대해 다루도록 하겠습니다. date : 현재의 날짜 및 시간을 확인 명령어 주요 옵션 : +%Y-%m-%d : 날짜 출력을 YYYY-MM-DD 포맷으로 출력 +%H:%M:%S : 시간 출력을 H(시)-M(분)-S(초) 포맷으로 출력 실행 화면 : hostname : 호스트 정보 확인 명령어 주요 옵션 : -i : (--ip) 호스트의 IP주소를 출력 실행 화면 : uname : 시스템 정보 확인 명령어 주요 옵션 : -a : 시스템의 전체 정보 출력 -s : 커널의 이름 출력 -n : 네트워크의 호스트 이름 출력 -r : 커널의 릴리즈 정보 출력 -v : 커널의 버전 출력 -m : 시스템의 하드웨어 타입 출력 -p : 프로세서의..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbhRNtE%2FbtrygvN4c5q%2FXoJgZGEA7SrEalgw98BKDK%2Fimg.png)
이번 포스트에서는 컴퓨터 그래픽스의 Parametric Line Clipping Algorithm(매개 변수 선분 알고리즘)에 대해 다루도록 하겠습니다. Parametric Line Clipping Algorithm 지난 포스트에서는 C-S 알고리즘에 대해 다루었습니다. C-S 알고리즘은 선분의 양 끝점이 어디에 위치하느냐에 따라 선분을 accepted, rejected, clipped로 나누어 반복 실행을 통해 구했습니다. Parametric Line Algorithm은 이것을 바탕으로 단 한 번만 자르는 C-S알고리즘보다 더 효율적인 알고리즘이다. 먼저 다음에 제시된 그림을 통해 그래픽스 상의 선분의 특징에 대해 알아보겠습니다. Line 1, 2, 3이 있습니다. 세 Line의 양 끝점이 각각 P0와..
![article thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb0NuM8%2Fbtrye4aCPMT%2FuKt0f3JMXpEoRme4YhbQj0%2Fimg.jpg)
이번 포스트에서는 SQL Injection에 대한 포괄적인 소개를 다루도록 하겠습니다. SQL Injection SQL Injection의 정의 : SQL Injection은 우리나라 말로 SQL 주입이라 할 수 있습니다. 즉 임의의 SQL 쿼리문을 주입하는 공격 기법이라 할 수 있습니다. 좀 더 자세하게 설명하자면 SQL 인젝션은 웹 사이트의 보안상 허점을 이용해 특정 SQL 쿼리문을 전송하여 데이터베이스가 비정상적인 동작을 하도록 조작하는 행위입니다. SQL Injection의 발생 원인 : SQL Injection은 주로 사용자가 입력한 데이터가 제대로 필터링, 이스케이핑하지 못했을 경우에 발생합니다. 즉, 클라이언트 측의 데이터를 신뢰해서 그대로 SQL문에 사용했기 때문입니다. SQL Inject..