얼마전에 Eric S. Raymond가 Sun에게 쓴 open letter. 현재의 Sun이 “The open-source model is our friend”라는 정책을 표명하고 있지만, 부족하다고 생각하며, 특히 Java code에 대해서는 control 하려는 경향이 강해서 Java는 open-source community에의 acceptance를 잃고 다른 language에 자리를 내주고 있다는 얘기를 하고 있다. 마지막으로, Java 개발을 open source community에 내주자는 주장을 하고 있다. 이에 대해 Simon Phipps는 답장에서 Java는 지금도 충분히 open source의 요건을 만족하고 있다고 하면서, 사실상 ESR의 요청을 거절했다.
지난 9일, PCI-Express에 mapping되는 AMD 진영의 대체 PCI bus인 Hypertransport 2.0 spec이 나왔다. speed capacity가 2.0-2.8 Giga Transfers/second이고 maximum aggregate bandwidth가 22.4 Gb/s란다.
아래의 Inside PCI Express 기사에 의하면, Hypertransport가 실용화되고 있는 시점에서 PCI Express가 어떻게 Hypertransport를 대체할 것인지에 대해서 잘 모르겠다고 평가하고 있다. 그리고 PCI Express가 process-to-process 또는 processor-to-north bridge간의 connection으로 활용될 경우, PCI Express가 채용하고 있는 serial interconnects (rather than pararrel interconnects in Hypertransport)는 latency가 높아질 수 있다고 한다. 그 외에도 MP design에 있어서의 cache coherent protocol의 지원 미비에 대해서도 언급하고 있다.
소비자인 나로서는 Hypertransport가 PCI Express와 용호상박이라는 것이 즐거울 수 밖에.
—>8— In the struggle to meet deadlines, I think pretty much all programmers have put in comments they might later regret, including swearwords and acerbic comments about other code or requirements. Also, any conscientious coder will put in prominent comments warning others about the trickier parts of the code. —>8—
—>8— From the comments, it also appears that most of the uglier hacks are due to compatibility issues: either backward-compatibility, hardware compatibility or issues caused by particular software. Microsoft’s vast compatibility strengths have clearly come at a cost, both in developer-sweat and the elegance (and hence stability and maintainability) of the code. —>8—
Secure Socket Layer/Transport Layer Security (SSL/TLS)나 Windows Integrated Security를 사용하는 방법이다. TLS란 SSL의 대체물로 SSL 3.1로 불리기도 한다. TLS와 SSL은 호환성이 없으므로, 새로운 프로젝트에는 TLS를 사용하는 것이 좋을 것이다.
Web services message는 Web services provider에게 secure SSL/TLS channel을 통해 전달된다. 이 secure channel은 interaction’s outset에서 handshake에 의해 형성된다. 각각의 message들은 encrypt되어있고 digitally sign되어있고, 따라서 message의 confidentiality와 integrity를 보장한다. initial handshake 중에는 single, dual-sided authentication이 일어난다. Web service provider는 항상 CA로부터 발급받은 certificate를 가지고 있다.
SSL/TLS solution은 매우 secure하지만, 매우 resource-intensive하기 때문에 scale하지 않다.
2. Windows Authentication
authentication만을 지원. (not encryption) provider와 client 사이의 정보는 clear text.
3. SOAP header
SOAP header는 fully extendable하기 때문에 authentication을 위한 credential을 포함하는 header를 만들 수 있다. 이러한 solution은 client와 service 양측에 대한 control이 가능할 때 가장 적절한 solution이다.
적절한 de facto or official standard 없이는 여러 partner간에 secure infrastructure를 일반화하고 유지하는 것은 불가능하다. 위의 방법들은 Web services를 위해 설계되지 않았기 때문에 한정된 환경 (constrained environment)에서 잘 동작하는 단기적인 해결책이다.
WS-Security specification from OASIS
– enhancements to the SOAP messaging protocol: authentication & security token – XML digital signatures: integrity – XML encryption: confidentiality
Web services architeture usage scenarios에서 W3C는 specification들에 관련된 Web services의 requirement를 정리하고 있다. 그러한 specifications들 가운데 기본적인 개념 하나는 미래의 Web services message들은 claim을 가질 것이란 것이다. claim이란 name, key, 또는 permission 그리고 authorization이다. Web services의 security policy는 필요한 claim들의 집합을 명시할 수 있다. Web service는 필요로 하는 claim을 가지지 않은 message를 무시하거나 거부할 수 있다. Web service client는 security token을 message에 포함함으로써 claim의 증명을 제시한다.
Web services message는 parsing, authentication, authorization에 필요한 모든 정보들을 가지고 있을 것이다. messages가 destination에 도달할 때까지 여러 intermediaries를 거치게 되므로, 이 원칙은 매우 중요하다.
이러한 시나리오에서 message의 recipient가 모든 인증된 claim을 가지고 message의 originator와 항상 직접 interact하는 것은 불가능하다. message가 필요한 claim 없이 destination에 도달할 경우, requestor나 requestor에 해당하는 intermediaries는 다른 Web services로부터 필요한 claim과 security token을 얻어올 수 있다.
Prepare for Web Services’ Future
Web services는 서로 다른 vendor들의 system을 연동하는 glue이다. 따라서 capable least common denominator가 시급하게 필요하다. 소프트웨어, 하드웨어 산업의 모든 key player들이 노력을 쏟고 있는 현실에서, 앞으로 Web services의 확산은 불가피한 것 같다.
FyRE666 writes “Infoworld are currently running an interesting comparison of the 2.4 series kernel against the new 2.6 release on Xeon, Opteron and Itanium … Source: http://slashdot.org/article.pl?sid=04/01/31/1915227
IETF Approves XMPP Core as Proposed Standard
hystrix writes “As long expected, the IESG has approved the Extensible Messaging and Presence Protocol (XMPP): Core (draft-ietf-xmpp-core-22.txt) as a Proposed … Source: http://slashdot.org/article.pl?sid=04/01/30/1346237
XML, XML namespaces, XML Schemas, XML Protocols SOAP (Simple Object Access Protocol) WSDL (Web Services Description Language) Web Service Architecture Web Service Glossary
IETF (Internet Engineering Task Force) http://www.ietf.org/ 웹 서비스에 관련된 spec을 많이 만들지는 않지만, 기반 기술을 위한 spec을 제공한다.
DIME (Direct Internet Message Encapsulation): 텍스트기반인 웹 서비스 메시지에서 binary attachment를 가능하게 해준다.
WS-I (Web Services Interoperability Organization) http://www.ws-i.org Microsoft, IBM 등에 의해 만들어졌으며, 서로 다른 vendor의 제품간의 웹 서비스 상호운용성(interoperability)에 초점을 맞추고 있다.
WS-Basic Profile
OASIS가 vendor들을 이끌고 de facto standard를 만들고, W3C와 IETF는 이러한 de facto standard를 통합하여 public standard로 만들어내며, WS-I는 compliance에 관련된 standard와 sample app, spec을 정의한다.