2014년을 맞이해서 접어놨던 내 블로그를 오늘부로 꺼낸다!

'일상생활 > 하루하루' 카테고리의 다른 글

접어놨던 블로그 꺼내기  (0) 2014.01.08
교생실습(4.4~4.30)  (2) 2011.05.02
4학년1학기 시작  (0) 2011.03.08
교내 모바일 어워드  (1) 2011.01.16
Posted by 츠큐파 ChQPa

댓글을 달아 주세요

 

Posted by 츠큐파 ChQPa

댓글을 달아 주세요


[##_http://chqpa.tistory.com/script/powerEditor/pages/1L%7Ccfile9.uf@1441103D4EB1E9D0112FFD.jpg%7Cwidth=%22197%22_##]
1달전 회사에서 책을 사주신다기에 흐뭇한 마음으로 책을 기다렸다. 
소설이나 에세이등을 기대했었지만 나에게 돌아온 책은 'Deploying OpenStack'. 도서에 대한 세미나까지 해야 한다는 기술적으로 나에게 아주 큰
 도움이 되는 기회(?)까지 얻게 되었다.^^


 각설하고 발표를 위해 책의 내용을 정리 하며 그 내용을 포스팅 해 보겠다.
(발표에 여러모로 도움이 될 것 같아서....^^) 

 이 오픈스택 프로젝트는 클라우드 환경 구축을 위한 유비쿼터스 소프트웨어 선택의 목표로 진행되고있다. 불과 1년이라는 시간안에 이 것은 단지 아이디어에서 실제 프로젝트로의 양 사간의 협력이 시작 되었다.(그 회사는 밑에 언급되어 있다.) 

 그렇다면 이제 이 프로젝트의 목적과 역사, 그리고 글을 읽는 당신이 이 프로젝트의 미래에 참여할 수 있는 방법을 알아보도록 하자.


 오픈스택 프로젝트는 public, private 시스템을 위한 오픈소스 클라우드 컴퓨팅 플랫폼을 만드는 것을 목표로 하고 있다. 그에 대한 첫번째 내용으로 IaaS가 제공하는 것을 알아보도록 하겠다. 현재 이 프로젝트는 다음의 3가지를 포함한다.

  • 조직하고, 관리하는  가상머신을 제공하는 소프트웨어 (Nova) OpenStack Compute.
  • 정적인 객체의 불필요한 스토리지를 위한 소프트웨어 (Swift) OpenStack Object Store.
  • 가상 디스크 이미지를 위한 스토리지 서비스와 쿼리를 제공 (Glance) OpenStack Image Service. 

 프로젝트 뒷단으로 핵심가치를 정의하는 것 중의 하나는 그것의 개방형 표준과 오픈소스 이 두가지가 함께 열려있음을 포용하는 것이다. OpenStack은 아파치 라이센스 2.0이하로 릴리즈 되어왔기 때문에 만약 이 글을 읽는 당신이 라이센스에 대해 잘 알지 못한다면 라이센스에 대한 모든 것을 리뷰해 보아야 한다. (http://www.apache.org/licenses/LICENSE-2.0.html)  또한 OpenStack은 OpenStack API를 통해 개방형 표준을 추진한다.

 이 OpenStack 프로젝트는 2개기관의 수행으로 인해 시작이 되었다 : Rackspace host-ing and NASA는 OpenStack프로젝트에 참여하길 결정했었고 그들 내부 Cloud 목적 스토리지를 릴리즈 하기로 결정했으며 또한, 일반 오픈소스 프로젝트와 같은 Cloud compute code base도 참여하기로 하였다.
 
  Swift와 Nova는 이전에 릴리즈 된것들이 기초를 하고있고, 이것들의 스토리지를 다루기 위해 또 다른 프로젝트(Glance)가 추가되었다.

Posted by 츠큐파 ChQPa

댓글을 달아 주세요

카테고리는 클라우드인데 네트워크 얘기만 하고 있는 것 같다.
하지만 Cloud역시 네트워크의 일부이며 기술이기 때문에 기본적으로 네트워크를 기반으로 풀어 나가야 겠다.

그래서 오늘 알아 볼 것은 네트워크 7개층이다. 기본적인 개념이므로 꼭! 알고있도록 하자.

 위의 사진은 네트워크 7계층을 그림으로 나타낸 것이다.
물리계층부터 1번레이어라고 보면되고 위로 올라갈 수록 1씩 증가한다.(송신측과 수신측이 같다)


위의 그림은 이기종 시스템간에 데이터 전송을 나타내고있다.

그럼 본격적으로 각 계층에 대해서 알아보도록 하자.

 
물리 계층(Physical Layer) - 1 계층
 정의 및 특성
§두 시스템 간의 데이터 전송을 위해 링크를 활성화하고 관리하기 위한
기계적
, 전기적, 기능적, 절차적 특성 등을 정의
§허브, 라우터, 네트워크 카드, 케이블 등의 전송매체를 통해
비트
(Bit)들을 전송
§상위 계층인 데이터링크 계층에서 형성된 데이터 패킷을 전기신호 또는
광신호로 변환하여 송수신
§OSI 모델의 최하위 계층에 속하며, 상위 계층에서 전송된 데이터를
물리 매체를 통해 다른 시스템에 전기적 신호를 전송한
§랜카드, 케이블, 허브, 라우터와 같은 물리적인 것과 데이터 전송을 위해 사용하는 전압이 물리 계층에 속함


 
데이터 링크 계층(Data Link Layer) - 2 계층
정의 및 특성
§물리적 링크를 통해 데이터를 신뢰성 있게 전송하는 계층
§하위 계층에 속하며 물리 계층의 바로 위에 위치
§네트워크를 통해서 데이터가 전송될 때 전송로 역할을 함
§비트들을 프레임(Frame)이라는 논리적 단위로 구성
§전송하려는 데이터에 인접하는 노드(시스템)의 주소가 더해짐
ü이 주소는 최종 수신지의 주소가 아니라 전송되는 다음 노드의 주소가 됨
§시스템 간에 오류 없는 데이터 전송을 위하여 네트워크 계층에서 받은
데이터 단위
(패킷)를 프레임으로 구성하여 물리 계층으로 전송


 
네트워크 계층(Network Layer) - 3 계층
 정의 및 특성
§패킷을 송신측으로부터 수신측으로 전송
§상위 계층에 연결하는 데 필요한 데이터 전송과 경로 선택 기능을 제공
§라우팅 프로토콜을 사용하여 최적의 경로를 선택
§데이터가 전송될 수신측의 주소를 찾고 수신된 데이터의 주소를 확인하여 내 것이면 전송 계층으로 전송
§데이터를 패킷(Packet) 단위로 분할하여 전송한 후 재결합
§데이터 링크 계층이 인접하는 두 개의 노드 간의 전송을 담당하는 반면,
네트워크 계층은 각 패킷이 송신지에서부터 최종 수신지까지 정확하게 전송되도록 경로를 책임짐


 
전송 계층(Transport layer) - 4 계층
 정의 및 특성
§프로토콜(TCP, SPX )과 관련된 계층으로, 오류 복구, 흐름 제어 담당
§두 시스템간의 신뢰성 있는 데이터 전송을 보장
§시스템 종단 간에 투명한 데이터 전송을 양방향으로 행하는 계층
ü네이버의 웹 서버까지 많은 장비들을 통과할 때 실제 물리 계층, 데이터링크 계층, 네트워크 계층까지만 해당되고, 서버에 도착한 후로는 웹서버가 특정 경로로 통신을 함(TCP 80)
§송신측 : 데이터를 패킷으로 분할
§수신측: 다시 결합하여 순서대로 재조립
ü, 2개의 프로세스 간의 데이터 전송을 위해 세션 계층에서 받은 데이터를 패킷 단위로 분할하여 네트워크 계층으로 전송
세션 계층(Session Layer) - 5 계층
 정의 및 특성
§응용 프로그램 계층 간의 통신에 대한 제어 구조를 제공하기 위해
응용 프로그램 계층 사이의 접속을 설정
, 유지, 종료시켜주는 역할을 함
§통신 장치들 간의 설정을 유지하며 동기화함.
§데이터의 단위(메시지)를 전송 계층으로 전송할 순서를 결정하고,
데이터에 대한 점검 및 복구를 위해 동기를 위한 위치(Synchronization Point)를 제공
§세션을 종료할 필요가 있을 때 적절한 시간을 수신자에게 알려준다.

 
표현 계층(Presentation Layer) - 6 계층
 정의 및 특성
§송신측과 수신측 사이에서 표준화된 데이터의 형식에 대해 규정
ü이미지가 bmp인지, jpg인지, 압축이 되었는지 등의 표현과 관련된 구분
§데이터 표현 차이를 해결하기 위해 서로 다른 형식을 변환해주거나
공통 형식을 제공하는 계층
§송신측 :수신측에 맞는 형태로 변환(아스키 코드 => EBCDIC)
§수신측 : 응용 계층에 맞는 형태로 변환
§두 시스템 간에 서로 다르게 사용하는 문자 및 그래픽 문자 등을 위해
번역을 수행하여 전송 데이터를 서로 이해할 수 있도록 함
§보안을 위하여 송신측에서 암호화하고 수신측에서 복호화하며,
전송률을 높이기 위하여 데이터를 압축

 
응용 계층(Application Layer) - 7 계층
 정의 및 특성
§파일 전송, DB, 원격 접속, 메일 전송 등 응용 서비스를 네트워크에
접속시키는 역할을 담당
, 여러 가지 서비스를 제공
ü전송에 사용되는 FTP, E-mail 전송에 사용되는 SMTP, POP3, 브라우저를 사용해서 웹 서버에 접속할 때 사용하는 HTTP 등 실제 응용 프로그램에서 사용하는 프로토콜들이 응용 계층에 해당
§사용자로부터 정보를 입력받아 하위 계층으로 전달하고 하위 계층에서
전송한 데이터를 사용자에게 전달
§OSI 모델의 최상위 계층에 속하며, 실제 통신의 최종 목표에 해당하는
가장 중요한 계층
§응용 프로세스(사용자, 응용 프로그램)가 네트워크에 접근하는 수단을
제공하여 서로 간에 데이터를 교환할 수 있는 창구 역할을 함

Posted by 츠큐파 ChQPa

댓글을 달아 주세요

  1. croute 2011.09.21 10:41 신고 Address Modify/Delete Reply

    오랜만에 보는 OSI 7layers ㅎㅎㅎ

  2. croute 2011.10.14 10:09 신고 Address Modify/Delete Reply

    오잉? ㅋㅋㅋㅋㅋㅋ

  3. croute 2011.11.04 12:30 신고 Address Modify/Delete Reply

    블로그를 안해서 ㅋㅋㅋㅋ



 클라우드 컴퓨팅이 요즘 대세다. 막연하게 내가 원하는 서비스가 구름안에 갖춰져 있는 구조라고 말 할 수 있는데, 그 구름이라는게 도무지 이해가 가지 않을 수도있다. 구름(cloud)라는 것은 속이 어떤지 그속을 알아 볼 수 없다. 여기에 서비스를 가져다 붙이면 되는데 설명하자면 이렇다.

 A씨는 해외에 있다. 그에게는 노트북 밖에 없다. 노트북에 소프트웨어라고는 기본적인 windows software만 있다. A씨는 회사에서 전화를 받았다. Excel로 문서를 작성해서 오늘 안에 보내달라는 것이다. 만약 A씨가 Cloud service를 모른다면 가까운 IT매장에 가서 Excel Software를 구매해서 노트북에 설치해서 사용해야 한다. 그렇지만 Cloud service를 알고 있다면 인터넷이 되는 가까운 cafe에 가서 web을 켜서 Cloud service에 접속하여 Excel문서를 작성할 것이다.

 이렇게 웹상에서(또는 모바일, 단말기 등) Software를 제공하는 것을 Saas(Software as a service)라고 한다. 그 외에도 Iaas(Infrastructure as a service), Paas(Platform as a service)가 있는데 그에 대한 개념을 알아보도록 하자.

  • Iaas(Infrastructure as a service)

    IaaS(Infrastructure as a Service)는 서버, 스토리지, 네트워크를 가상화 환경으로 만들어, 필요에 따라 인프라 자원을 사용할 수 있게 서비스를 제공하는 형태이다. Amaszon의 SC2나 S3, 또한 국내 기업들이 제공하는 ucloud, ndrive등이 인프라를 제공하는 서비스라고 할 수 있다.






     

  • Saas(Software as a service)


    SaaS는 공급자나 서비스제공자가 애플리케이션을 호스팅하고, 고객은 네트웍(대개는 인터넷 등)을 통해 사용할 수 있도록 하는 소프트웨어 배포 모델을 가리킨다. SaaS는 기반 기술인 웹서비스 및 SOA 기술의 성숙과 AJAX 등과 같은 신개발방식의 보편화에 따라 점차 널리 행해지는 소프트웨어 배포모델이 되고 있다. 그동안 광대역 서비스가 점차 확대됨에 따라 세계적으로 더 많은 지역에서 사용자들이 이러한 서비스에 접근할 수 있게 되었다. 

  • Paas(Platform as a service)

    PaaS(Platform as a Service)는 SaaS의 개념을 개발 플랫폼에도 확장한 방식으로, 개발을 위한 플랫폼 구축을 할 필요 없이 필요한 개발 요소들을 웹에서 쉽게 빌려쓸 수 있게 하는 모델이다.

    구글이나 네이버다음 등에서 제공하는 OPEN API들이 PaaS의 일종이며, 구글의 '앱 엔진'이나 Bungee Labs 의 '번지커넥트' 등은 직접 온라인 서비스를 개발에서 배포, 관리 까지 가능한 플랫폼을 제공하고 있다. 

 
ChQPa
Posted by 츠큐파 ChQPa

댓글을 달아 주세요

  1. croute 2011.08.11 03:14 신고 Address Modify/Delete Reply

    츠큐파님 오랜만입니다 ^^





IPv6은 기존의 주소체계 'IPv4'로 더 이상 인터넷 주소를 할당할 수 없게 됨에 따라 마련됐다.

두 가지 체계 모두 '영어문자열.com' 같은 도메인 이름이 아니라 컴퓨터가 인터넷을 통해 다른 컴퓨터를 찾을 때 쓰는 숫자 주소를 구성하는 방법이다.

IPv6을 사용하면 이전 체계에서보다 약 40억배 더 많은 인터넷 주소를 할당할 수 있다.

구글 관계자는 찾아가려는 홈페이지가 "느리게 표시되거나 응답하지 않을" 확률이 0.05%였을 것이라고 추정했고, 페이스북 관계자는 자사 서비스 이용자 중 0.03%만이 이번 시험으로 인한 영향을 받았을 것이라고 추산했다.

그렇다면 밑의 간략한 설명으로 IPv6에 대해서 알아보도록 하겠다.

IP(Internet Protocol)는 인터넷상의 한 컴퓨터에서 다른 컴퓨터로 데이터를 보내는 데 사용되는 프로토콜이다. 인터넷상의 각 컴퓨터, 즉 호스트들은 다른 컴퓨터와 구별될 수 있도록 적어도 한 개 이상의 고유한 주소를 갖는다.


■ IPv4

현재 IP주소는 버전4(IPv4)으로 네 도막으로 나눠진 최대 12자리의 번호로 이뤄져있다. 예를 들면 「210.113.39.224」이다.

32비트로 이뤄진 IPv4는 최대 약 40억개의 서로 다른 주소를 부여할 수 있다. 그러나 기하급수적으로 늘어나는 사용자 수요를 감안할 때, 현재 사용되고 있는 IPv4 체계로는 계속해서 요구되는 인터넷 어드레스 수요를 충족시킬 수 없다.


■ IPv4 → IPv6

'인터넷 엔지니어링 태스크 포스'(IETF;Internet Engineering Task Force)에서는 2008년에서 2011년 사이에 IPv4 어드레스가 고갈될 것으로 예측했으며, 'IPng'(IP next generation)라고 하는 작업 그룹을 형성하여, 1994년부터 활동해 왔다.

이 결과로 1995년 9월 18일 표준이 제안되면서 IPv6가 만들어 졌다. 또한 IPv6를 연동, 실험시킬 수 있는 실험망으로 1996년 Bob Fink등이 주축이 되어 6Bone이라는 가상망을 만들었다.


■ IPv6

IPv6주소는 128비트체계로 구성 되어 있으며, 그 표현방법은 128비트를 16비트씩 8부분으로 나누어 각 부분을 콜론(colon, ":")으로 구분하여 표현하며, 각 구분은 16진수표현한다.

예) 2001:230:abcd:ffff:0000:0000:ffff:1111

128비트 주소체계인 IPv6는 최대 1조개 이상을 마련할 수 있는 점이 특징이다. IPv6가 쓰이면 장차 일상생활에 사용하는 모든 전자제품, 작게는 전자제품의 일부 회로가 서로 다른 IP주소를 갖게 된다.

또한 서비스에 따라 각기 다른 대역폭을 확보할 수 있도록 지원, 일정한 수준의 서비스 품질(QoS)을 요구하는 실시간 서비스를 더욱 쉽게 제공할 수 있고 인증, 데이터 무결성, 데이터 기밀성을 지원하도록 보안기능을 강화했다.

또 인터넷 주소를 기존의 「A, B, C, D」와 같은 클래스별 할당이 아닌 유니캐스트·애니캐스트·멀티캐스트 형태의 유형으로 할당하기 때문에 할당된 주소의 낭비 요인이 사라지고 더욱 간단하게 주소를 자동 설정할 수 있다.

'나만의 생각' 카테고리의 다른 글

IPv6시대가 열린다.  (0) 2011.06.09
Posted by 츠큐파 ChQPa

댓글을 달아 주세요


- Finite Automata -> Regular Expression (정규표현) <- Token ( Formal notation)

- Token -> Type (형태)
-> Attribute (속성)

- 공백문자(string)은 ε(epsilon) 또는 λ(ramda)fh vygusgksek
- 언어를 정의하기위해 String을 정의한다.

- L(a(ab)*) = L((ab)*a) -> a(ba)* = (ab)*a 라고 할 수 있다.

- 정규정의 : 정규표현에 이름을 부여함

- Regular set : 정규표현으로 나타낼 수 있는 문자열 집합 




ChQPa

'컴퓨터공돌이 > 컴파일러설계' 카테고리의 다른 글

컴파일러 설계(기본)  (3) 2011.05.07
Posted by 츠큐파 ChQPa

댓글을 달아 주세요

  1. croute 2011.05.12 23:27 신고 Address Modify/Delete Reply

    음....

  2. croute 2011.06.02 04:39 신고 Address Modify/Delete Reply

    블로그 블로그 랄라~


4월 4일부터 4월 30일까지
내 모교인 송도고등학교에 교생실습을 다녀왔습니다.

처음에는 무척이나 긴장이 돼서 괜히 나왔다는 생각이 ㄷㄷㄷ
그치만 4주동안 아이들과 지내다 보니 재미있더라구요~

게다가 학교 역사상 최대인원이...교생만 21명인 사태가 벌어져서 더 재미 있었습니다.



이러면 안되지만 점심먹고 짬나는 시간에는 교생들끼리 카드게임을...(돈걸고 한거 아니고요.ㅎㅎㅎ)



또 다른학교와 농구시합이 있을때는 구경도 갔습니다.
사실 체육관 지하에 교생실이 있어서 쿵쾅거리는 소리를 듣고 올라가보니
연습게임을 하고 있더라구요^^


학교가 기독교 미션스쿨이라 부활절 예배를 드린다고 아이들을 운동장으로 소집 ㅎㅎㅎ
미션스쿨 치고는 별다른 종교의 압박이 없는 학교에요.


마지막으로 담임반아이들과 함께 찍은사진 올릴께요~ 1학년 5반 뽀에버



ChQPa

'일상생활 > 하루하루' 카테고리의 다른 글

접어놨던 블로그 꺼내기  (0) 2014.01.08
교생실습(4.4~4.30)  (2) 2011.05.02
4학년1학기 시작  (0) 2011.03.08
교내 모바일 어워드  (1) 2011.01.16
Posted by 츠큐파 ChQPa

댓글을 달아 주세요

  1. croute 2011.05.02 17:04 신고 Address Modify/Delete Reply

    학생들이 귀엽군요 ㅋ


-문자 입력받기(getch)



2번째 줄 : getch() 함수가 선언되어 있는 헤더파일 (conio.h)을 포함한다. getch() 함수의 원형은 다음과 같다.
            
  int getch(void)

4번째 줄 : 엔터키 값은 아스키 코드가 13이다.

15번째 줄 : getch() 함수는 키보드로부터 문자를 한 개 입력받아서 int형으로 반환한다. 그래서 int형 변수인 ch에 값을 대입하는 것이다. 또한, getch() 함수는 숫자, 대.소문자 외에 특별한 값을 입력받는데, 그 것은 F1~F12, Ctrl + a ~ Ctrl + z, Home, End, PgUp, PgDn, 방향키 등이다. 이 특별한 값을 입력받는 경우, getch() 함수는 두 번에 걸쳐 키 값을 읽어 온다. 예를 들어 F1키를 누르면 첫 번째 getch() 함수 호출 시에는 아스키 값이 0이 읽혀지며, 두 번째 getch() 함수 호출 시에는 아스키값 59가 읽혀진다.

17번째 줄 : 키보드로부터 읽은 문자와 아스키 코드값을 출력한다.

19번째 줄 : 엔터값이 입력될 때까지 계속 반복하여 키를 입력받는다.

 <결과>



 
Posted by 츠큐파 ChQPa

댓글을 달아 주세요



매크로는 함수 대신에 사용하는 것으로써, 위 소스코드와 같이 짧은 문장에 주로 사용되며, 복잡한 문장을 단순화 하기 위해서도 사용한다. 매크로를 정의하기 위해서는 #define 문을 사용한다.

3번째 줄 : 최대값을 구하는 매크로 MAX를 작성한다. 주어진 a,b는 함수에서처럼 인수의 역할을 하며, 16번째 줄에서 사용된 MAX(i,j)를 " i > j ? i : j "로 치환해준다

4번째 줄 : 최소값을 구하는 매크로 MIN를 작성한다. 주어진 a,b는 함수에서처럼 인수의 역할을 하며, 17번째 줄에서 사용된 MIN(i,j)을 " i < j ? i : j "로 치환해준다

여기에 사용된 MAX(i,j)가 매크로이므로 이 문장은 컴파일러에 의해 다음처럼 변경된다.

printf("최대값은 %d입니다.\n", i > j ? i : j );

즉, 매크로는 함수와는 전혀다르며, 매크로를 사용한 모든 곳은 위와 같이 해당 매크로가 선언된 문장처럼 컴파일 시 자동으로 변경된다.
Posted by 츠큐파 ChQPa

댓글을 달아 주세요