Archivar por abril, 2010

Steve Jobs: La muerte de un mito

Share on Google+Share on FacebookTweet about this on Twitter

De siempre he sido un gran devoto de Steve Jobs por el trabajo que ha realizado durante tantos años al frente de Apple, tanto como gran empresario como persona. Y es que el dinero y el poder corrompen a todos, y llega un punto en el que lo importante no es el cliente, no son tus productos. Lo importante es hacer lo que haya que hacer para ganar más dinero, más poder. Y todo ello a costa de palabras tarjiversadas y muchos millones en márketing.

Steve Jobs no quiere ni puede permitirse que sus fieles puedan comenzar a pensar por si mismos o que puedan estar molestos por algo. Por ello, cuando algo molesta a sus seguidores y fieles FanBoys, en vez de resolver el problema y admitir que no lo han hecho bien remite cartas abiertas, comentarios y otras prácticas para intentar tarjiversar la realidad, para que con un poco de suerte, sus  seguidores, seguidores de Apple puedan descansar tranquilos, a fin de cuenta si lo ha dicho Steve Jobs es que debe de tener razón (Es lo que se dirán).

Esta historia es vieja, el comunicado de Steve Jobs realizado antes de ayer (ya manifiesto en casi todos los medios de comunicación) no lo es. Y es que una de las mayores críticas que ha tenido Apple y que aun mantiene es que sucede con Flash, por qué no se tiene soporte Flash en el iPhone. Steve Jobs, en vez de trabajar desde un principio con Adobe y llegar a un acuerdo, en vez de dar un soporte decente de Flash y pedir perdón por los retrasos, en vez de admitir… en vez de todo ello, lo único que hace es para variar tirar balones fuera, que la culpa no es de ellos, que ellos están con los usuarios y por sus intereses, que Flash es el demonio y ellos sus salvadores. Es simple, dado que no puedes admitir la culpa y que no puedes hacer nada para solucionarlo, es mejor comenzar una cruzada en contra de Flash. Y yo me pregunto, si tan demonios es Flash, ¿Por qué un 75% de todas las Web del mundo usan tecnología Flash? De nuevo, Apple, en su trono de prepotencia liderados por Steve Jobs opinan que ese 75% se equivoca.

El artículo original lo tenemos en la misma web de Apple, lo podemos leer AQUI (En inglés). Vamos a desgranar poco a poco toda esa palabrería bonita de Steve Jobs:

 

El artículo comienza diciendo que Apple y Adobe han estado juntos mucho tiempo y trabajando por intereses comunes, pero que el problema de Flash no se debe a Apple y sus restricciones en el AppStore (Esto lo dice Steve debido a los últimos acontecimientos en los que Apple ha añadido en última hora una cláusula para prohibir que Adobe Flash CS5 pueda crear aplicaciones Flash para iPhone), sino que el problema de base (según Jobs siempre) es debido a planteamientos diferentes en cuanto a la tecnología. Antes de comenzar Jobs enumerando los supuestos 6 motivos, termina diciendo que Adobe clama que Flash es abierto y que es Apple quien no lo és cuando desde su punto de vista es al contrario. Y con ello comienza a debatir en el punto primero sobre ello. Vamos a ver lo que viene diciendo Steve Jobs en el comunicado y lo que en realidad está sucediendo, porque no es de recibo:

 

Causa Primera según Jobs:

Según Jobs la causa primera por la que Flash no se incluye en iPad/iPhone/iPod Touch es que es un sistema cerrado, propietario completamente, y como tal Adobe se reservará siempre el derecho de hacer con su tecnología lo que desee, ya sea poner precio a licencias, ya sea retirar Flash del mercado… y se defiende diciendo que aunque el OS del iPhone es efectivamente también propietario, Apple apoya todos los estándares y que cree en los sistemas abiertos. Dice que Apple ha adoptado los estándares como HTML5, CSS o JavaScript y que sobre esos estándares Apple ha logrado un gran rendimiento en su uso. Por supuesto, Steve Jobs explica en este punto que tanto Apple como Google como muchos otros han adoptado HTML5, lo que permite crear gráficos vectoriales, animaciones y mucho más sin la necesidad de plugins, y que además HTML5 está regido por un comité que supervisa el estandar. Steve Jobs termina explicando que ellos son los precursores de WebKit, y textualmente cito: “complete open-source HTML5 rendering engine” es decir, un engine de renderizado web de código abierto, del cual se ha basado Chrome de Google o el navegador que usa Nokia. Y es por ello en lo que termina afirmando que al ser así, como el nucleo WebKit nacio de ellos, son ellos los que han plantado el estandar en navegación en los dispositivos portátiles.

 

Causa Primera y sus errores:

Es completamente cierto que la tecnología Flash es propietaria de Adobe, y es igualmente cierto que si Adobe quisiese podría comenzar a cobrar licencias por el mero uso de usar Flash en las web. Lo que sucede es que esto no es creíble. La tecnología Flash es usada en el 75% de las web actuales!! Claro que prefiero los sistemas no propietarios y de código abierto, pero eso no implica que el software propietario sea el demonio. Lo paradójico aquí, lo más gracioso es que Apple precisamente no es de las compañías que más se ciernen a eso de sistemas abiertos. Como Steve dice, tanto el OS del iPhone, como MAC OS, como el 95% de todo el software de Apple es propietario. Como es capaz de criticar Apple que Flash es una tecnología propietaria cuando el 95% de su software no está liberado de licencias? Como puede decir eso cuando Apple es de las compañías que menos código abierto tiene en sus manos?Pero lo intenta explicar diciendo que aunque su OS es propietario Apple ha apoyado estándares como HTML5, CSS y JavaScript. Sinceramente no veo nada de extraordinario apoyar los estándares de la red, todos lo hacen, desde Microsoft, Intel, Adobe, Mozilla, Opera… a día de hoy TODOS apoyan los estándares, nadie ha dicho lo contrario. Lo que sucede es que esto es lo que le sirve a Steve Jobs para agarrarse a HTML5 de nuevo. Primero, pese a que Jobs asegura que ha logrado un gran rendimiento en dichos estándares, lo cierto es que actualmente Safari, el navegador de Apple, deja mucho que desear en cuanto a HTML5 y CSS se refiere, siendo en cambio el rendimiento de JavaScript positivo, a la par más o menos que el resto de los competidores. Pero hablemos un poco más de HTML5 (otra vez) ya que le gusta mucho a Jobs nombrarlo. Dice que tanto Apple como Google se han sumado al carro de HTML5… pero esa afirmación es irreal. A Jobs se le olvida que HTML5 no es un estandar, actualmente es un borrador!! el cual se espera que hasta 2012 por lo menos no estén sus especificaciones terminadas!! El soporte HTML5 de los navegadores actuales es relativamente pobre, y tan solo están en los navegadores implementadas ciertas características de este. Efectivamente HTML5 permitirá crear gráficos vectoriales, animaciones, video y mucho más!! pero dos cosas: Ni esto implica la sustitución de Flash ni tampoco se puede esperar a medio plazo.Lo mejor de todo ello ,es que Safari y su WebKit es el navegador (quitando IE) que menos funciones HTML5 implementa, y que el rendimiento que tiene el navegador cuando trabaja con ello es generalmente inferior del que se cabría esperar si se ejecutase con tecnología Flash. Decir que WebKit es un engine HTML5 es completamente FALSO!! WebKit como hemos dicho implementa menos funciones HTML5 (q como hemos dicho son borradores, que mañana pueden cambiar) que Firefox u Opera.

Por otro lado, y no menos importante, Apple dice que es Adobe el que se empeña a no apoyar los estándares abiertos y tan solo se cierra sobre lo suyo. Esto es falso!! la mejor evidencia de esto es que en CS5 existirán herramientas para poder convertir contenido Flash (siempre contenido que pueda ser creado en HTML5) en Canvas, en HTML5. Si realmente Adobe no apoyara los estándares jamás daría a los desarrolladores una herramienta para portar ciertas características de Flash a HTML5. Adobe no es una hermana de la caridad, es una empresa por supuesto, pero no implica que no quiera HTML5 o los estándares. Tanto que Apple critica, Flash es a fin de cuenta el que impulsa la creación de HTML5 y la necesidad de un estandar que cubra ciertas cuestiones que hasta ahora eran posible tan solo gracias a la tecnología Flash, y tal ha sido su éxito que está extendido a unos niveles increíbles.

Por otro lado Steve Jobs se jacta de que gracias a ellos y a WebKit existen navegadores como Safari o Chrome. Bien veamos esto. Para empezar, WebKit es una remodelación de KHTML, un engine web que fue creado nada más y nada menos que por el proyecto KDE, que desde luego para todos los usuarios de Linux no es un nombre desconocido. Efectivamente Apple siempre fue un componente importante en el desarrollo de KHTML, y de ahí a decir que WebKit fue una invención de Apple me parece simplemente un despropósito, máxime cuando ha tenido numerosos contribuyentes y el apoyo de muchos. En segundo lugar, Chrome efectivamente está basado su núcleo en WebKit, pero bastante remodelado. Ambos soportan la mayoría de las mismas funciones a nivel de layout, pero poco más. Por ejemplo, tanto que se jacta Apple de webKit, hay que decir que actualmente Safari es el navegador con diferencia más inseguro y proclive a exploits y otros agujeros de seguridad, como quedó demostrado de nuevo hace unas semanas en el concurso Pwn2Own y verificado por expertos de seguridad en todo el mundo. Que Apple ha realizado un buen trabajo con WebKit? Por supuesto!! pero es un insulto decir que “Apple ha sembrado el estandar en navegación Web para dispositivos portátiles”. Primero porque no ha sido Apple, han sido muchos los que han estado y están detrás, y segundo porque casi con toda seguridad Fennec arrase tanto Safari como Chrome para dispositivos portátiles. Por cierto!! El navegador más usado para dispositivos portátiles en la actualidad no está basado en Webkit, sino en Presto, el engine de Opera. Safari a día de hoy tiene una cuota de mercado casi inexistente, tanto en sobremesa como en dispositivos portátiles.

 

Causa Segunda según Jobs:

En esta causa, Jobs dice que Adobe asegura que el 75% de todas las web usan Flash, y que por tanto iPhone/iPad/iPod touch no pueden acceder al contenido de ese 75%. “Lo que Adobe no dice es que la mayoría de todos esos vídeos también estan disponibles en un formato más moderno, H264, y que puede ser reproducido pro iphone/ipod/ipad, que YT, con una estimación del 40% de todos los videos de internet brillan en iPhone OS”. Aprovecha para decir que el iPad se convierte así en lo mejor para ver los videos o que compañías como la BBC y otras están adaptando sus contenidos para que pueda ser visualizado correctamente por el iPad. Dice que es por ello que los iPod, iPhone o iPad no es que se estén perdiendo precisamente muchos videos.

Para acabar, dice que Adobe dice simplemente que ningún usuario de iPhone/iPad/ipod puede ejecutar juegos flash, a lo que Jobs les responde que afortunadamente es así!! dado que para ello tienen más de 50.000 juegos en el AppStore para cubrir las necesidades de cualquiera.

 

Causa Segunda y sus errores:

Esta es sinceramente una de las alegaciones que más me gusta. Señor Jobs, déjeme que le explique algo, que seguro que usted sabe pero que se le ha olvidado comentar. Flash no es solo video. Cuando Adobe dice que el 75% de las web hacen uso de tecnología flash no se está refiriendo exclusivamente a videos en Flash, sino a cualquier contenido flash!! podemos encontrar así desde menus, presentaciones, aplicaciones, videos, juegos… Jobs… te empeñas a decir una y otra vez que HTML5, que video, que… y lo cierto es que efectivamente el 75% de las web usan flash, y lo cierto es que el 75% de las web que se visitan desde un iPhone, un iPad o un iPod Touch encuentran el icono de contenido Flash. Intenta acceder a la web de nVidia, Intenta acceder a la web de MARCA, intenta acceder a webs de Radio, Intenta acceder a Webs de bolsa o noticias en las que aparecen gráficos creados en Flash, Intenta acceder a Webs de tiendas, las cuales la mayoría usan de una forma u otra Flash. Y la verdad es que el 75% de las web de internet de un modo u otro usan Flash. Sí, ya lo sé, si quiero ver un video en YT voy a poder verlo y no necesitaré flash, pero señor jobs, no le hablo de video, le hablo de TODO lo demás (y por supuesto también el video)

Por otro lado hay que recordarle al señor Jobs es que los videos Flash dede hace ya tiempo son 100% compatibles con H264. H264 no es un formato, es un Codec de video. La tecnología Flash permite embutir en la web videos en un formato llamado FLV. FLV no es más que un contenedor, como pueda serlo MP4, AVI, MKV… Es cierto que FLV ha usado durante mucho tiempo el Codec VP6, pero desde hace ya tiempo el codec usado en FLV (en Flash) de forma más que mayoritaria es H264, es más, Flash permite el uso de aceleración por Hardware de este Codec. ¿Resumiendo? Que las palabras de Jobs no tienen ni pie ni cabeza. Pero ojo!! Jobs sabe perfectamente todo ello, es un tipo bastante listo (no es irónico, realmente lo es), solo que hay que intentar confundir a los usuarios. Actualmente, prácticamente el 100% de todos los videos de YT están en Flash y h264, concretamente usando X264. Por cierto… me fío mil veces más de la calidad y el rendimiento del decoder usado por flash para h264 que el usado por Apple en su especificación <video> para HTML5 para videos en h264. Como he dicho, Flash actualmente tiene soporte para aceleración por hardware. Steve, intenta ver un video en HD en html5 por medio de safari y después haz lo mismo con Firefox en flash, compara el rendimiento de cada navegador, el uso de CPU… y después nos lo comentas.

De nuevo, Jobs se jacta de que muchas compañías están adaptando sus contenidos para sus productos… sinceramente me da lástima!! personalmente prefiero usar un navegador o tecnologías que pueda usar siempre!! sin necesidad de contenido específico para dichos dispositivos. Porque al final, ¿que es lo que tenemos? Interfaces reducidas, contenido específico nada que ver con el contenido de las web completas. No se si llamar estandar a lo que tu haces, si obligas a muchos a tener que adaptar sus contenidos para que puedan visualizarse correctamente en tus dispositivos, porque no eres capaz de aceptar la palabra Flash en tu vocabulario.

Por último, hay que decir que es cierto que el AppStore posee muchas aplicaciones diversas. ¿Que tiene que ver la carne con el pescado? Hace unos años si te preguntaban sobre la ínfima cantidad de software para MAC OS habrías dicho que la cantidad no importa, que MAC OS era mejor y punto. Ahora el AppStore tiene má aplicaciones que nadie, y ahora el mismo argumento que antes revatías es el que quieres hacernos creer? Si realmente crees lo que dices, no habrías evitado que CS5 pudiese portar las aplicaciones Flash a iPhone OS. Eso yo lo llamo miedo a la evidencia.

 

Causa Tercera según Jobs:

En este apartado Apple asegura que Flash es un problema en cuanto a seguridad, estabilidad y rendimiento. Asegura que la tecnología Flash se lleva uno de los peores registros en cuanto a seguridad se refiere en el año 2009 según Symantec, y que Flash es el responsable número uno de los fallos y cuelgues de MAC OS durante muchos años. Y que evidentemente por todo ello no quieren poner Flash en sus iPhone/iPod/iPad.

Por otro lado, Jobs asegura que Flash no funciona correctamente en ningún dispositivo portatil, que ellos aun no han visto ningún dispositivo en el que funcione de forma decente, que es cierto que llevan diciendo mucho tiempo que aparecería una versión Flash completamente funcional para dispositivos portátiles y que aun no se sabe nada de ella.

 

Causa Tercera y sus errores:

Esta no es la que más me gusta, pero si la que me parece más inverosímil de todas. Flash, como cualquier software tiene errores y fallos de seguridad. Puedo aceptar el echo de que Flash en 2009 sacase una mala nota en cuanto a seguridad se refiere (sinceramente no lo he comprobado pero puede ser cierto), lo que no puedo aceptar de ningún modo es que Steve Jobs diga que la causa número uno en MAC OS de fallos y cuelges sea debida a Flash desde hace ya años!! Porque sinceramente no me lo creo. Si eso fuese cierto, y tan innecesario que es Flash para la web, ¿por qué Apple no ha eliminado entonces todo soporte Flash para MAC OS? Según lo que dice Jobs, permite que un software no haga otra cosa que causar errores en su sistema operativo? Sinceramente no se como gestionará exactamente los procesos MAC OS, pero hasta donde yo sé lo máximo que cabría esperar sería un cuelge o cierre del navegador, y no del sistema, lo cual además podría evitarse ejecutando en un hilo diferente Flash, tal y como se está haciendo ahora en Firefox. Lo siento, pero no me lo creo, máxime cuando como hemos dicho Safari es el navegador más inseguro que existe en la actualidad. Si tanto le importa a Apple la nota que ha sacdo Flash según Symantec en cuanto a seguridad, debería de preocuparle más el echo de que los mayores expertos de seguridad del mundo coinciden en que Safari es el navegador más inseguro (y por ello proclive a errores) y MAC OS igualmente por detrás de Linux y Windows. Por supuesto puede ser cierto que Flash no sea todo lo estable que podría ser, no lo dudo en ningún momento!! pero sinceramente me fío más de los programadores de Adobe que los de Apple, que llevan ya 20 versiones de su iPhone OS y aun no es posible enviar un archivo por BT, o que hicieron falta 15 versiones diferentes para poder enviar un simple MMS o grabar video.

Sobre que Flash no funciona correctamente en ningún dispositivo? Es falso. Es cierto que no podemos comparar el potencial de un dispositivo portatil con un PC, es cierto que ciertas funciones pueden verse reducidas, pero no implica que el rendimiento y el uso general sea más que aceptable. Pero es que aun así, en el peor de los casos, prefiero tener un rendimiento relativamente bajo (en comparación con un PC) de contenido flash (sea el que sea) que no poder acceder correctamente al 75% de las web existentes.

 

Causa Cuarta según Jobs:

La batería. En esta causa Jobs ahora sí (porque le interesa) recuerda la aceleración por Hardware. Jobs Asegura que decodificar por hardware video en H264 requiere mucha menos energía (y por tanto mayor duración de la batería) que si se decodifica por software. Jobs ahora parece que también se acuerda de que efectivamente Flash soporta H264, pero asegura que la gran mayoría dle conteido flash aun permanece en contenido VP6, otro codec, del cual no hay un decodificación por hardware. Acaba asegurando que la mayoría de todos los sitios están recodificando sus contenido en h264 que funcionan perfectamente en Apple Safari o Chrome

 

Causa Cuarta y sus errores:

Aquí Jobs se ha liado el mismo. Cuando no conviene hablar de Flash y H264 no se habla y tan solo de VP6. Y mejor aun!! cuando hay que hablar de aceleración de hardware hablamos tan solo de sus dispositivos portátiles!!. Vamos por partes.

Primero, es completamente cierto que la decodificación hardware de contenido H264 tiene un gasto energético mucho menor al que podría emplear un procesador en hacerlo. Pero hagamos memoria… sí… es cierto… Steve Jobs dice que Flash soporta h264 pero tan solo de una pequeña parte hasta ahora y que es por ello que la mayoría del contenido está aun en el codec antiguo. Esa afirmación es doblemente tramposa. Primero porque el soporte para Flash de H264 existe desde ANTES de que Apple haya dado soporte para Safari de h264 por medio de HTML5. En segundo lugar, dice que la mayoría de todo el contenido que existe está en los codec antiguos, pero… ¿No esgrimía precisamente Jobs hace un rato que Google poseía ella sola el 40% de todo el tráfico de vídeos? Pues bien, actualmente como hemos dicho el 99% de TODOS los videos de YT se encuentran en Flash y H264, y esto se lo demuestro a quien quiera.

Pero eso solo quita la primera parte, la segunda parte sobre la aceleración de hardware es aun mejor. Es cierto que el iPhone/iPod/iPad hacen uso de la aceleración por hardware para poder reproducir los videos en h264. Tambien es completamente cierto que Flash igualmente permite usar aceleración por hardware para decodificar los videos en h264, cosa que a Steve Jobs se le olvidó comentar. Es más, también se le ha olvidado comentar que si bien es cierto que su iPad, iPhone, iPod tienen aceleración por hardware para h264, no es así para Safari en MAC OS a través de HTML5!!. Es decir, por un lado quedo bien hablando sobre aceleración por hardware en iPhone/iPod/iPad, pero no digo que Flash tiene soporte por aceleración por hardware desde antes incluso que Safari siquira pudiese reproducir h264 por medio de html5. No es gracioso?

Actualmente, el 70% de los videos creados en flash deberían de estar ya en h264. Efectivamente es un codec muy sofisticado y potente, aunque aun queda por ver si efectivamente será incluido o no como estandar en HTML5. Por otro lado, la aceleración por hardware para h264 no es algo nuevo para los usuarios de Windows y Flash desde hace tiempo, mientras que Safari (en MAC OS) no tiene soporte hardware para h264 ni con flash ni con HTML5.

Para acabar con el supuesto problema de la batería… tan solo puedo acordarme de que fue uno de los motivos que también esgrimió hace unos días para defender que sus Macbook no se actualizarían a Core i3 y Core i5, para así poder tener una mayor autonomía.. cuando ya dije en su momento que los Core i3 y Core i5 de bajo consumo (los Core 2 Duo que usan actualmente son de bajo consumo también) con sumen bastante menos, 15W frente a los 25W de los Core 2 Duo. Es decir… de nuevo no me creo absolutamente nada que pueda decir Jobs sobre baterías.

 

Causa Quinta según Jobs:

Apple alega en esta penúltima causa la pantalla táctil. Apple asegura ahora que muchos contenidos flash funcionan tipo barras deslizantes, en las que pasas el ratón por ellas y se despliegan unas opcioens u otras. Steve Jobs alega que dado que sus dispositivos son completamente táctiles, dichas funciones dejarían de ser viables, dado que dicho problema no se podría sortear.

Para terminar dice que aun así, los desarrolladores tendrían que reescribir el código para que las web funcionaran correctamente bajo sus dispositivos, y que ya que lo hacen lo lógico es que lo hiciesen en un estandar más actual como HTML5 y CSS.

 

Causa Quitan y sus errores:

De nuevo cuando le interesa a Jobs aparece el término “Otros contenidos Flash que no son videos” En que quedamos… ¿el 75% de las web usan flash video, Flash no video o como es? Es cierto que una pantalla tactil limita ciertas funciones flash como las comentadas. Pero dos cosas. Primero, el problema sería exactamente el mismo si el contenido fuese creado en HTML5 y CSS, dado que al ser una pantalla tactil carecería de puntero de ratón y por ello no existiría un foco de ratón que pudiese activar un contenido u otro. Es decir, el que sea tactil no afecta el echo de que se use tecnología flash o contenido en CSS o HTML5, sino al echo de que no hay puntero!! Y que por cierto se podría haber solucionado por ejemplo con un botón o gesto concreto que colocase un puntero en la pantalla que pudiese desplazarse desplazando el dedo. Así de simple.

Jobs, lo lógico es que un programador que crea una web que tiene cientos miles millones de visitas no tenga que adaptarse a tus 3 dispositivos, sino al resto de los miles de millones de ordenadores, portátiles, móviles… Por supuesto!! cuando html5 sea una realidad yo seré el primero que iré portando poco a poco el contenido de mi blog a HTML5 y CSS (ya tienen parte código CSS y HTML5), pero a día de hoy no lo es, y pedir a los programadores que cambien sus web simplemente porque Apple es incapaz de dar soporte Flash, me parece cuanto menos prepotente.

 

Causa Seis según Jobs y sus errores:

Un largo BLA BLA BLA sobre el último problema de permitir o no permitir acceso a las API internas del sistema del iPHone. Personalmente me aburre leer siempre lo mismo y las mismas tonterías de siempre. Es cierto que en parte cada cual mira por su negocio y su bolsillo, es cierto que cada cual siempre defenderá sus tecnologías. Lo que no se puede hacer es ir contra todos.

 

Conclusiones:

Apple se empeña a ir contra todos. Aun cuando el 75% de las web no pueden ser accedidas correctamente desde un iPod o un iPhone o un iPad, Steve Jobs se empeña para intentar hacernos ver que Flash no es necesario a día de hoy. Dice que Flash es tan solo cosa del pasado y que el futuro son los estándares y HTML5. HTML5 será un existo rotundo… dentro de unos años, y aun así dudo mucho que sustituya Flash. Adobe a demostrado siempre una propensión bastante grande a apoyar los estándares, y mejor prueba de ella es su CS5. Las causas principales que esgrime Apple como la batería, el rendimiento, la pantalla tactil o tantos otros, no son sino un intento desesperado de intentar hacer ver a tus fieles lo que es negro blanco. Pero al final, es el usuario el que cuando trata de acceder a alguna web con contenido Flash no puede. Al final es el usuario el único que es perjudicado por esta cruzada personal de Apple contra Adobe, de querer imponer siempre sus normas y su juego. Puede que las web de algunas grandes empresas como Google, Microsoft, Intel, BBC… radio, televisión… puedan adaptar sus contenidos como un favor a Apple (y por supuesto no me extrañaría que cobrando de las arcas de Apple), pero la web no se compone tan solo de grandes magnates que pueden permitirse todo, sino de TODOS y para TODOS. Si quiero crear una web para venta Online, sé que el 99% de todos los dispositivos dle mundo cuentan con Flash y si me hes más cómodo por la razón que sea crear el conteido que sea en Flash, lo voy a hacer, y me va dar exactamente igual que usuarios de iPhone o Ipad se queden fuera, no me va a dar ninguna pena.

Lo más triste de todo es como Jobs intenta manejar la información. En puntos en los que debería de hablar de ciertos tema no habla, y lo saca más adelante como si antes no importase. Temas como la aceleración de hardware, presente en la tecnología Flash desde hace tiempo. Temas como que es realmente Flash o que es el contenido flash video. Temas como que es realmente HTML5 y su relación con Flash. Temas sobre cuando será viable HTML5, el soporte de los navegadores para HTML5 y otras cuestiones.

HTML5 es el futuro? Bueno, no es sino otro estandar más que sustituirá al actual HTML4.1. Muchas funciones que se están barajando son muy interesantes, pero de nuevo recordar que no es más que un borrador. Es decir, que de aquí a 2-3 años el borrador actual puede cambiar desde en pequeños detalles a sustancialmente, eliminando o añadiendo especificaciones. Por ejemplo, Safari tiene soporte HTML5 para H264… que sucedería si finalmente H264 no se impone como Codec estandarizado para HTML5? Que sucedería? Que el decodificador por hardware del iPod/iPhone/iPad comenzaría a ser completamente inservible, que Apple tendría que modificar los navegadores para soportar los nuevos codec y bueno….bla bla bla. Actualmente el navegador con más funciones implementadas del borrador de HTML5 es con diferencias Firefox, y aun así no podemos decir siquiera que tenga un soporte completo, ni de lejos!! y ya hemos dicho por qué. Para los programadores no es muy divertido implementar funciones que requieren mucho tiempo para ello para que un mes después tengan q volverlas a modificar o incluso a eliminar.

Flash morirá algún día? Es dificil decirlo. Es posible que llegue un día que existan especificaciones estándares que suplan al 100% la tecnología Flash, y que poco a poco con los años esta vaya desapareciendo. Pero aun en ese caso, hablamos no de unos meses!! ni de un año, ni de dos!! Es decir, por mucho que Apple se empeñe a decir que el futuro es ahora, la verdad es que los usuarios de iPhone, iPod Touch o iPad van a continuar sin poder entrar y navegar correctamente por el 75% de todas las web durante muchos años. Dos años? tres años? cuatro años? Quien sabe… Lo que es cierto es que actualmente Flash es completamente necesario para poder navegar por la web, y esto es algo que creo que todos estaremos completamente de acuerdo en ello.

 

Me duele ver que con el paso de los dias, semanas y meses, mi posición acerca de Apple se endurece. Como profesional y como usuario, para mi es simplemente lamentable ver como se usa la información para engañar, tarjiversar o confundir a aquellos que tienen menos ideas, con el único interes de llenar las arcas.

Simplemente… lamentable.

Apple renueva la gama de sus MacBook. Echemos un vistazo!! y por supuesto algunas mentiras

Share on Google+Share on FacebookTweet about this on Twitter

Apple ha renovado su gama de MacBook Pro, actualizando tan solo ligeramente las características de los anteriores y permitiendo por fin poder escoger un procesador Core i3 o Core i5 (Por supuesto pagando considerablemente más). Así que haciendo un descanso me he pasado por el Store de Apple para ver que nos ofrencen, tanto ellos como por supuesto la competencia, a fin de cuentas quien en su sano juicio podría comprar un Ordenador sin ver todas las alternativas, y dado que un MACBook no es más que un Portatil normal y corriente solo que trae por defecto MAC OS, es más que sensato y coherente esta pequeña comparativa de precios y productos.

Por oto lado no puedo negar la sorpresa ante el comunicado oficial de Apple cuando se ha preguntado por tantos flancos sobre el por qué de mantener aun procesadores antiguos (Core 2 Duo), cuando los Core i3 i5 i7 están el mercado hace ya bastante tiempo. Los analistas por un lado la respuesta la tenían clara, Apple intenta simplemente exprimir lo máximo posible sus beneficios, vendiendo tecnología antigua a un a precio de oro (como veremos más adelante). En cambio la respuesta de Apple ha sido más “interesante” a la par que falsa desde mi punto de vista.

Y es que según Apple, los MacBook no se han actualizado a los Core i3 o i5 por que (y cito) “No es necesario”. Porque según Apple las mejoras realizadas son suficiente para incrementar el rendimiento hasta en 1.5x veces. Además, asegura Apple, la inclusión de Core i3 i5 i7 repercutiría en un impacto negativo y considerable en términos de batería, y que (según Apple de nuevo) ellos no están dispuestos a permitir, dado que de este modo le dan al cliente grandes prestaciones con un consumo de batería mínimo. Y al mismo tiempo que se han dicho estas palabras, se ha pasado a mostrar los nuevos MacBook, ahora sí usando Core i5 y Core i7. Lo gracioso no obstante es que el consumo de batería entre ambos es muy similar.

¿Que hay de verdad en todo esto? Nada. Bueno… los analistas tienen razón. La cuestión es que cualquiera que se compre a día de hoy un MacBook con un procesador Core 2 Duo estará (desde mi punto de vista) cometiendo la más grande de las tonterías por múltiples motivos. Como veremos a continuación, los Core i5 o Core i7 de bajo consumo consumen MENOS que los procesadores Core 2 Duo de bajo consumo. Es decir… que si a un MacBook le colocases un Core i5 de bajo consumo la batería duraría más, por no decir el incremento en incluso en un 50% de rendimiento para una velocidad de reloj igual.

 

Para todo ello, vamos a intentar a analizar de la forma más objetiva posible la oferta por parte de Apple en portátiles. Así, vamos a ver el modelo básico MacBook, el más avanzado MacBook que podamos construir y exactamente lo mismo para MacBook Pro (En el caso de MacBook pro no se va a optar por lo más avanzado, el precio se puede ir a 3000€ y me parece un poco absurdo). Pero antes de ello compararemos los diferentes procesadores que vamos a usar en la “review” y al final compararemos de forma global el hardware entre los diferentes productos. Recordemos que estamos comparando Hardware, no Software, esa tarea ya se realizó en el artículo sobre Windows 7, y por supuesto quien esté interesado no tengo problema alguno en hacer una comparativa a nivel de OS. Comencemos por los procesadores:

Procesador Frecuencia / Max. Turbo Boost Nucleos / Hilos Caché Bus Consumo Instrucciones Tecnologías y Notas
Core i7 720QM 1.6GHz / 2.8GHz 4 / 8 6MB 2.5GT/s 45W SSE4.2 HT, Turbo Boost, VTx, VTd, TXT, EIST, bit XD, C5/C6
Core i7 620M 2.66GHz / 3.33GHz 2 / 4 4MB 2.5GT/s 35W SSE4.2, AES Video Integrado, HT, Turbo Boost, VTx, VTd, TXT, EIST, bit XD, C5/C6
Core i5 520M 2.4GHz / 2.93GHz 2 / 4 3MB 2.5GT/s 35W SSE4.2, AES Video Integrado, HT, Turbo Boost, VTx, VTd, TXT, EIST, bit XD, C5/C6
Core i5 520UM 1.06GHz / 1.866 2 / 4 3MB 2.5GT/s 15W SSE4.2, AES Video Integrado, HT, Turbo Boost, VTx, VTd, TXT, EIST, bit XD, C5/C6
Core 2 Duo P7550 2.26GHz / No 2 / 2 3MB 1066MHz 25W SSE4.1 VTx, EIST, bit XD

Estos datos no son inventados, están tomados de la documentación de Intel y cualquiera puede tener acceso a ellos. Están evidentemente ordenados de mayor rendimiento a menos. Así, de todos los procesadores que vamos a ver es evidente por encima de todos el Core i7 720QM. La explicación detallada de cada una de las columnas de la tabla serán especificadas al final del artículo para quien quiera saber exactamente que es cada cosa

 

MacBook Básico:

Dimensiones: 2.74 cm grosor, 23.17 cm profundidad, 33.0.3 cm ancho. 2.13Kg aprox

Procesador: Intel Core 2 Duo P7550 -> 2,26GHz, 2 Nucleos /2 Hilos, 3MB Caché, Bus 1066Mhz, 25w, 45nm, SSE 4.1…
Placa Base: Chipset nVidia, GigaEthernet,
Memoria: ¿Fabricante? 2*1GB = 2GB DDR3 1066Mhz
Tarjeta de Video: Integrada, nVidia 9400M 256MB Compartida
HDD: ¿Fabricante? 250GB SATA 5400 rpm
Pantalla: 13.3” LED
WIFI: a/b/g/n
Bluetooth: 2.1 EDR
Conexiones: 2 USB, 1 entrada de Audio, 1 Salida de audio, 1 DisplayPort
Batería: Hasta 7 Horas, soldada
Otros: Bloqueo Kensington, Conector magnético, Grabadora DVD, WebCam

Precio ->  879.00€

 

MacBook Modificado:

Dimensiones: 2.74 cm grosor, 23.17 cm profundidad, 33.0.3 cm ancho. 2.40Kg aprox

Procesador: Intel Core 2 Duo P7550 -> 2,26GHz, 2 Nucleos /2 Hilos, 3MB Caché, Bus 1066Mhz, 25w, 45nm, SSE 4.1…
Placa Base: Chipset nVidia, GigaEthernet,
Memoria: ¿Fabricante? 2*2GB = 4GB DDR3 1066Mhz
Tarjeta de Video: nVidia 9400M 256MB Compartida
HDD: ¿Fabricante? 500GB SATA 5400 rpm
Pantalla: 13.3” LED
WIFI: a/b/g/n
Bluetooth: 2.1 EDR
Conexiones: 2 USB, 1 entrada de Audio, 1 Salida de audio, 1 DisplayPort
Batería: Hasta 7 Horas, soldada
Otros: Bloqueo Kensington, Conector magnético, Grabadora DVD, WebCam

Precio ->  1.104,01€ (+225,01€ Sobre el precio Base)


Asus UL30jt:

Dimensiones: 2 cm grosor, 23 cm profundidad, 32.2 cm ancho. 1.9 Kg aprox

Procesador: Intel Core i5 520UM, 1.066/1.866Ghz, 2 Nucleos/4 Hilos, 3MB Caché, Bus 2.5GT/s (2000Mhz aprox), 18W, 32nm, SSE4.2+AES
Placa Base: Chipset Intel HM55, GigaEthernet, Adaptador de Video integrado
Memoria: 2*2 GB = 4GB DDR3 1066MHz
Tarjeta de video: Intel GMA HD + nVidia 310M 1GB (No Integrada)
HDD: ¿Fabricante? 500GB SATA 7200 rpm
Pantalla: 13.3” ¿LED?
WIFI: a/b/g/n
Bluetooth: 2.1 EDR
Conexiones: 3USB, 1 Firewire, 1 entrada de audio, 1 salida de audio, 1 HDMI, 1 VGA, Lector Tarjetas 5-1,
Batería: Hasta 10 Horas, extraible
Otros: Lector Bluray/Grabadora DVD (Depende modelo), WebCam, ExpressGate…

Precio estimado -> 740€-850€ (A la venta en una semana o dos)


Es una de esas veces en los que los números lo dicen todo. Una vez más se deja de manifiesto que Apple no es algo más caro que la competencia, sino que es mucho mucho más caro. En el primer caso el Asus escogido, ASUS UL30JT no solo posee un precio inferior que cualquiera de los dos MacBook especificados, sino que posee un rendimiento bastante superior a ellos. Sin poder dar números de una forma 100% fiable, yo diría que el ASUS podría tener entorno un 40-50% más de rendimiento que el MacBook más potente, en cuanto a procesador y arquitectura se refiere. Hablamos de dos juegos más de instrucciones, de 4 hilos en vez de dos, de un BUS sensiblemente más rapido y con una arquetectura que posee el controlador de memoria en la propia CPU. En cuanto a Gráfica, tendríamos una tarjeta nVidia 9400M integrada frente a un sistema DUAL de adaptadores gráficos. Por un lado un adaptador integrado en el mismo procesador, Intel GMA HD, que en cuanto potencia/rendimiento es inferior al adaptador nVidia 9400M, ambos soporte DX10 (aunque esto poco importa para MAC OS). Por el otro lado, un adaptador nVidia 310M con 1GB de memoria dedicada, lo cual es importante, dado que la 9400M de estos MacBook no posee memoria propia y usa la memoria del sistema para ello, lo cual es evidentemente peor. En términos de rendimiento prestaciones, nVidia 310M es sensiblemente mejor, además de ser un adaptador dos generaciones más moderno que la 9400M, lo que incluye soporte para OGL3.1, DX 10.1, OpenCL… ASUS hace un buen uso de ambos adaptadores gracias a la tecnología a su vez Optimus de nVidia, que reduce considerablemente el consumo de batería.

El resto de las características son más similares. Quizás indicar un considerable mejor HDD en caso de nuestro ASUS al disponer de un HDD de 7200rpm, y por supuesto un siempre util lector de tarjetas, un puerto USB más y salida HDMI, tan importante a día de hoy y en cambio Apple continúa en su empeño de DisplayPort. Aunque es interesante ver como está reaccionando… luego se comentará en la siguiente coparación. El resto son detalles, como la posibilidad de lector BlueRay o la tecnología ExpressGate de Asus que permite arrancar el sistema en una distribución especial de linux en tan solo 5 segundos desde iniciar el portatil. Y por supuesto… batería extraible.

Por supuesto hay que añadir algo más… la batería. Apple se ha jactado de decir que uno de los motivos de no incluir Core i5 Core i3 en sus Macbook era por el rendimiento/consumo. Pues bien, como ya se dijo los Core i5 de bajo consumo consumen MENOS que los Core 2 Duo de bajo consumo. De echo, se puede apreciar en la batería, con un tiempo estimado de más de 10 horas de trabajo, frente las 7 que especifica Apple. Alguien debería de explicarle a los portavoces de Apple que si un Core i5 consume 10W menos, eso se nota al final en la batería para que dure más, y no al revés.

Por peso o dimensiones, nuestro ASUS pesa ligeramente menos y algo más fino, aunque más o menos poseen las mismas dimensiones.

Y por último, podemos decir que ASUS UL30JT es aproximadamente un 60-70% superior que segundo MacBook, y tan solo cuesta un 30% menos que este!! un 60-70% más por un 30% menos de dinero. No está nada mal. En realidad el rendimiento es muy complicado de calcular, es estimado y no puedo decir que sea para nada fiable al 100%. Está basado en las diferencias entre ambas arquetecturas, las diferencias de reloj, la consideración de los 4 hilos de Core i5 y por supuesto los dos adaptadores gráficos de ASUS.

El único punto negativo para este ASUS es la incógnita si posee o no posee una pantalla LED, puesto que no he sido capaz de verificarlo ni para si ni para no.

 

 

MacBook Pro 15” Básico:

Dimensiones: 2.41 cm grosor, 24.9 cm profundidad, 36.4 cm ancho. 2.54Kg aprox

Procesador: Intel Core i5 520M -> 2,4GHz, 2 Nucleos /4 Hilos, 3MB Caché, Bus 2.5GT/s, 35w, 32nm, SSE 4.2+AES
Placa Base: Chipset Intel HM55, GigaEthernet, Adaptador de Video integrado
Memoria: ¿Fabricante? 4*2GB = 8GB DDR3 1066Mhz
Tarjeta de Video: Intel GMA HD + nVidia 330M 256GB (No Integrada)
HDD: ¿Fabricante? 320GB SATA 5400 rpm
Pantalla: 15” LED
WIFI: a/b/g/n
Bluetooth: 2.1 EDR
Conexiones: 2 USB, 1 firewire, 1 entrada de Audio, 1 Salida de audio, 1 DisplayPort
Batería: Hasta 8-9 Horas, soldada
Otros: Lector de SD, Bloqueo Kensington, Conector magnético, Grabadora DVD, WebCam

Precio ->  2.059,00€


MacBook Pro 15” Modificado:

Dimensiones: 2.41 cm grosor, 24.9 cm profundidad, 36.4 cm ancho. 2.54Kg aprox

Procesador: Intel Core i7 620M -> 2,66GHz, 2 Nucleos /4 Hilos, 4MB Caché, Bus 2.5GT/s, 35w, 32nm, SSE 4.2+AES
Placa Base: Chipset Intel HM55, GigaEthernet, Adaptador de Video integrado
Memoria: ¿Fabricante? 8*2GB = 8GB DDR3 1066Mhz
Tarjeta de Video: Intel GMA HD + nVidia 330M 512GB (No Integrada)
HDD: ¿Fabricante? 500GB SATA 7200 rpm
Pantalla: 15” LED HD Antireflejos
WIFI: a/b/g/n
Bluetooth: 2.1 EDR
Conexiones: 2 USB, 1 firewire, 1 entrada de Audio, 1 Salida de audio, 1 DisplayPort
Batería: Hasta 8-9 Horas, soldada
Otros: Lector de SD, Bloqueo Kensington, Conector magnético, Grabadora DVD, WebCam

Precio -> 2638,98 €


HP Envy 1150es:

Dimensiones: 2.65 cm grosor, 24.4 cm profundidad, 38 cm ancho. 2.35Kg aprox

Procesador: Intel Core i7 720QM -> 1,6GHz, 4 Nucleos /8 Hilos, 6MB Caché, Bus 2.5GT/s, 45w, 45nm, SSE 4.2
Placa Base: Chipset Intel PM55, GigaEthernet
Memoria: ¿Fabricante? 4*2GB = 8GB DDR3 1066Mhz
Tarjeta de Video: ATI HD 5830 1GB (No Integrada)
HDD: ¿Fabricante? 500GB SATA 7200 rpm
Pantalla: 15” LED Full HD, brillante y antiflecectante
WIFI: a/b/g/n
Bluetooth: 2.1 EDR
Conexiones: 4 USB, 1 firewire, 1 entrada de Audio, 1 Salida de audio, 1 HDMI, 1 eSATA
Batería: Hasta 7-8 Horas, Extraible
Otros: Lector de SD+MMC, Combo BR+DVDR, , WebCam

Precio ->  1.815 € (+150€  por ampliación a 8GB RAM)

 

En este caso he optado por enfrentar un modelo de HP de gama alta frente a los MacBook Pro. El primer Macbook pro sería el macbook pro de 15 pulgadas por defecto, el más llano, mientras que el segundo sería considerablemente superior, intentando acercarlo a nuestro HP escogido. De nuevo se repite el espectáculo anterior. Apple ha optado por Core i5 520M y Core i7 620M respectivamente. En este caso Apple por fin se sube a la era Nehalem, pero llega tarde para variar y a un precio de risa. He buscado este HP por un motivo concreto, su precio es exactamente el mismo que el modelo de MacBook Pro de 15 pulgadas más llano, y buscar así el MacBook pro más cercano a este en cuanto rendimiento… lo cual no ha podido ser posible, dado que el MacBook Pro más alto que existen en cuanto procesador/adaptador de video es el mostrado.

Lo que tenemos? Bueno, nusetro HP Envy cuenta con un procesador i7 720QM, es decir, dispone de 4 nucleos y por tanto 8 hilos, por supuesto una caché superior. Aquí nos encontramos un casi similar, donde los 1.6GHz de un Quad se enfretan a un 2.4GHz/2.6GHz de los modelos de Apple. ¿Que es mejor? En cuanto a fuerza bruta se refiere está claro, 4 cores * 1.6 = 6.4GHz combinada frente 4.8GHz/5.2GHz de los MacBook pro, sin contar por supuesto la tecnología multihilo de Intel, que si se pudiese estimar haría la diferencia mucho mayor a favor de HP Envy. ¿Siempre es mejor la velocidad combinada? Hoy por hoy no hay dudar a lugas. Las aplicaciones son prácticamente en su totalidad multiprocesador y/o multihilos, lo que crea uan diferencia entre estos 3 modelos bastante clara y contundente a favor de Envy -> Un 23% más de velocidad combinada frente al Macbook i7 620, a lo que sería necesario incluir el aporte multihilo superior y la caché, lo que situaría a Envy con un rendimiento bruto entorno al 40% superior al MacBook Pro simplemente en cuanto a procesador se refiere. En caso del Core 95 520M la diferencia sería superior, entorno un 50-60% superior. En realidad no he comprendido el porqué de Apple a usar el Core i7 620 por su gran similitud al Core i5 520M, donde la única diferencia sensible es un reloj algo superior

Dejando a un lado el procesador y atendiendo al adaptador gráfico, aquí Apple hace buen uso de la tecnología de Intel de adaptadores integrados en el propio procesador, como ya vimos en el caso de nuestro Asus comentado con anterioridad. En este caso Apple ha usado un adaptador combinado algo mejor que nVidia 310 usado en nuestro Asus, un 330M, que no deja de ser bastante similar, aunque un poco más potente. En el primer caso el adaptador posee tan solo 256MB de RAM y 512MB en el segundo caso. Pero no hay que olvidar que esta gama de nVidia continua siendo una gama baja. Un adaptador nVidia 330 posee todo lo bueno de la generación 300 de nVidia, pero en cuanto a rendimiento bruto no es comparable a ninguna hermana de ella de gama media o alta, incluso de una o dos generaciones inferiores. Es por ello que resultaría muy complicado poder comparar este sistema de adaptador gráfico dual con el adaptador gráfico de Envy, ATI radeon HD 5830. Pese a que no me gusta ATI para adaptadores de video, no quita que este adaptador sea tremendamente superior. Es cierto que el procesador Core i7 720QM no posee adaptador gráfico integrado y tan solo dispone de un adaptador de video principal, lo cual al final repercute en el consumo de batería, pero aun así, como digo en rendimiento bruto no es comparable ni de lejos. Hablamos de un rendimiento en cuanto a gráfica de no se… un 100-200% superior o bastante más. En definitiva… no es comparable en modo alguno, sin contar con que posee 1GB de RAM o soporte para DX11.

Por otro lado tenemos la RAM. Para ver las grandes diferencias he optado por realizar ampliaciones en los MacBook y en Envy hacia los 8GB de RAM. De nuevo sucede lo inexplicable. Apple cobra una actualización de 4GB de RAM al precio realmente increíble e ilógico de 360€. Un módulo de 4GB DDR3 1066 lo puedes encontrar sin problema por 30€!! Apple estaría cobrando por la RAM, agarraos, un 240% más!!!

En este caso ha sido posible equiparar el HDD, pero no la pantalla. La pantalla de Envy a priori es todo lo que pueda ser la de Apple, pero además es Full HD, es decir, posee una resolución superior a la mejor opción de pantalla de Apple. Y para el resto de las cuestiones, un reproductor BlueRay siempre ayuda como valor añadido. En este caso los Macbook pro si cuentan por fin con lectores de tarjeta (ya era hora), pero no con una sencilla salida HDMI. Aquí existe una gran novedad, y es que ahora por fin Apple vende (por supuesto separado) un adaptador DisplayPort -> HDMI. Como sucediese con USB y firewire, dentro de un año o dos a lo mejor admite el error y comienza a implantar HDMI en vez de DisplayPort.

Para terminar, y es un punto negativo para nuestro Envy es que posee una duración de batería menor, lo cual era de esperar dado que el consumo del procesador y la gráfica es superior. Aun así, la duración no es tampoco tan dispar. A fin de cuenta en la tecnología tienes que hacer sacrificios, y en este caso o rendimiento o batería.

Conclusión? Puedo decir aproximadamente que Envy posee un rendimiento de un 60%-70% superior aproximadamente en comparación con el MacBook Pro más superior, y no solo eso, sino que igualmente Envy tiene un coste aproximado de un 30% menor. Un 60%-70% más de rendimiento por un 30% menos de precio. Tampoco está nada mal.

 

Conclusiones finales? Soy crítico o soy realista? Los números están ahí y cualquiera puede coger la calculadora y comparar. El hardware es el mismo, los fabricantes pueden ser los mismos igualmente. Lo que cambia es simplemente a quien compras los componentes y quien los ensambla. El software por otro lado es completamente interoperable, a todos puedes ponerle todos los OS. Que sucede entonces? Simplemente que es cierto lo que decían los analistas, Apple intenta siempre maximizar los beneficios. La historia de siempre, el mismo perro con diferente collar, aunque en este caso incluso el collar es el mismo, y la historia se vuelve a repetir.

 

 

Apéndices:

Frecuencia: Aunque muchos crean lo contrario, a día de hoy la frecuencia del procesador no lo es todo ni mucho menos. Por ejemplo es mucho más importante las tecnologías que tenga implementadas o el juego de instrucciones, y por supuesto el número de núcleos e hilos que pueda manejar simultáneamente. No obstante, es evidente que aunque existan cuestiones más importantes la velocidad de reloj es posiblemente la cara más visible de un procesador y evidentemente tiene importancia, ya que dicta el ciclo de reloj y con él la velocidad de ejecución de las diferentes instrucciones.

Arquitectura: Como hemos dicho, la frecuencia no es lo más importante en el rendimiento de un procesador, sino su arquitectura interna. Aquí vamos a tratar con dos arquitecturas diferente. Arquitectura “Core” (Core 2 Duo) y Arquitectura “Nehalem” (Core i5 i7). Por poner un ejemplo, la misma instrucción ejecutada en dos procesadores con igual frecuencia de reloj, uno sobre arquitectura Core y otro en Nehalem, puede ser a lo mejor ejecutado un 50% más rapido en Nehalem!! Por poner un ejemplo real, la instrucción “EXTRACTPS” en nehalem tiene una latencia de dos ciclos, mientras que en core tiene una latencia de cinco ciclos, más del doble.

Nucleos / Hilos: Es evidente que un nucleo adicional implicaría en el caso ideal la duplicación de rendimiento en bruto. Es decir, si se tiene una frecuencia de 1GHz por nucleo, con dos nucleos se tendría una frecuencia combinada de 2GHz. Hilos por el contrario son las instrucciones simultaneas que pueden ejecutarse. En condiciones normales un procesador core/nehalem puede ejecutar 4 instrucciones por ciclo de reloj, con lo que una instrucción se ejecutaría en un cuarto de ciclo de reloj). Pero gracias a la tecnología HT de Intel, cada nucleo duplica los hilos (el canal por dond circulan las instrucciones. Es decir… es como si el procesador pudiese ejecutar no 4 instrucciones por ciclo, sino 8. El caso ideal diría que es como duplicar el rendimiento del procesador, puesto si en un ciclo puedo ejecutar 4 por nucleo eso me da 4 instrucciones por ciclo. Si puedo ejecutar dos hilos simultaneos por nucleo me da las 8 instrucciones por ciclo. Esto en la práctica no es así,  no se logra duplicar ni mucho menos el rendimiento, pero si que se logra sin mucho problema incrementos entorno al 10%-20%. Es decir… creo q una tecnología bastante eficaz

Caché: Explicar bien la caché es complicado. Yo suelo decir a menudo que el procesador todo lo que ejecuta está en memoria, es decir, que no tiene acceso al HDD nunca. Todo lo que se ejecuta está en memoria. Pero esto no es del todo cierto. En realidad existe una jerarquía de memoria. El procesador en realidad tan solo puede leer o escribir en la memoria más cercana a él, que es la memoria Caché L1 (Nivel 1). Así, en un Core i920 por ejemplo existe una memoria Caché L1 de 64KB Datos +64KB Instrucciones y una memoria Caché L2 de 256KB unificada. Tanto la caché L1 como L2 es una caché por nucleo, es decir, cada uno de los 4 cores de un i920 es lo que posee. Pero en nehalem se hace destacar una caché L3 unificada y compartida entre todos los nucleos de 8MB. Hay que entender que la memoria caché es la memoria más rapida que existe para el procesador, a la que menos tarda en acceder y gestionar. Así, la memoria más rapida pero de menor tamaño es la L1, después la L2, después la L3. Y de producirse un fallo en caché L1 (es decir, el dato no está) se accedería a L2. Si el dato está se pasa a L1 y listo de lo contrario se produce un fallo en caché L2 y se pide el dato a L3. Si en L3 se produce un nuevo fallo de caché es necesario entonces salir del procesador y acceder a memoria principal (RAM) y de RAM a L3, después a L2 y después a L1. En caso de que el dato tampoco esté en RAM, entonces es necesario el proceso más lento de todo, acceso al HDD. El dato es necesario extraerlo del disco duro, de este a RAM, de RAM a L3, despues a L2 y a L1, y el procesador tomaría el dato de dicha caché. Por ello es improtante tener memorias caché de gran tamaño bien administradas. Lo ideal sería tener uan caché infinita de tiempo de acceso nulo… pero esto no es posible. Pues bien, decir que la caché en Nehalem está mucho más optimizada que en Core, y que dentro de Nehalem cuanta más caché evidentemente mejor, puesto que se producirán menos fallos en L3 y por consiguiente menos accesos a RAM, lo que hará al sistema más rápido.

Bus: Con Bus nos referimos al BUS principal del sistema, la velocidad con la que los datos pueden ser transferidos entre los diferentes dispositivos dentro del puente norte. En Nehalem Intel cambia todos los esquemas, elimina el controlador de memoria y hace uso de dos buses principales diferentes, según gama alta o gama baja/media. Para las gama baja/media usa un bus DMI (no voy a entrar en detalles en ellos) y para la gama alta QPI. Sin entrar en detalles, podemos decir que DMI es mucho más eficaz qu el viejo bus por una razón simple: No existe controlador de memoria. Aparte de ello, posee una capacidad similar al ancho de banda. Para el bus antiguo FSB podía llegar hasta los 10.6GB/s (resulta de multiplicar el FSB -> 333*4 = 1332 por el ancho del bus que son 64 bits = 8 Bytes) tan solo para los Core 2 Duo Extreme, siendo más habitual el bus de 1066Mhz = 8.5GB/s. El bus DMI alcanza los 10GB/s, estando por encima del BUS FSB “estandar” para los Core 2 Duo y casi a la par que los Core 2 Duo Extrem. Por supuesto de nuevo la joya de la corona está para el BUS QPI (no presente en estos modelos), que posee un ancho de banda para en caso para el Core i920 de la friolera de 25GB/s

Consumo: Cuanto más consumo tiene un procesador, más batería requiere de un portátil. Del mismo modo, cada tecnología de fabricación menor, el consumo se reduce en igualdad de condiciones, por ello es bueno siempre que sea posible usar la tecnología de fabricación menor que se pueda, por supuesto además de tener una mayor integración

Juego de Instrucciones: Son las instrucciones que puede manejar un procesador. El ejemplo más fácil de comprender es pensar en un procesador que puede hacer 1 operaciones en un segundo, y que tan solo sabe sumar dos números. Es decir, puede hacer 10 sumas en un segundo. Si con ese procesador quiero realizar la multiplicación 5 * 8. ¿Cuantos segundos serían necesarios? (5+5)+(5+5)+(+5+5)+(5+5) = 4 sumas -> (10+10)+(10+10) = 2 sumas -> (20+20) = 1 Suma -> Sumas totales 4+2+1 = 7 Sumas = 7 Segundos. Ahora, imaginar que nuestro procesador ha evolucionado y en un juego de instrucciones nuevos se le añade entre otras una instruccion para multiplicar, la cual es posible realizar en 3 segundos. En este caso cuantos segundos serían necesarios? (5*8) = 1 multiplicación = 3 Segundos. Es decir, un nuevo hardware puede ser mucho más eficaz, aun cuando la velocidad de reloj se mantiene constante gracias a nuevas instrucciones o conjunto de ellas.

Tecnologías: En un procesador no solo es importante la capacidad en bruto para operar, también lo es sus capacidades. Puedo tener el mejor motor del mundo, pero este puede calentarse demasiado sin un buen control de temperatura, o podría ser mejor si este motor fuese intercambiable a cualquier otro coche o… Intel ha realiado un gran trabajo en estas cuestiones, y muchas de las tecnologías actuales están orientadas al control inteligente del procesador para reducir el consumo y el calor, como los estados Idle C5 y C6 o Intel Speed Step. Otras tecnologías permiten un mayor rendimiento, como es el caso de la ya hablada HT o la tecnología Intel Boost Turbo, que permite de forma automática incrementar el reloj de un nucleo, dos o cuatro, en función de lo que demande el sistema y de la temperatura de estos. Otro punto importante es por supuesto las tecnologías de virtualización, que quizás la mayoría no sepa que son, pero que nos permite poder trabajar de forma muy eficiente con sistemas operativos virtualizados, es decir… el poder instalar sistemas operativos dentro de otros sistemas operativos, y es por ello que estas tecnologías de virtualización lo que logran es incrementar al máximo la eficiencia de estas virtualizaciones, siendo el summum de la virtualización el lograr un rendimiento perfecto del OS invitado, es decir, que el OS instalado dentro de nuestro OS principal pudiese tener el mismo rendimiento que si fuese instalado en una partición propia y ejecutado sobre ningun OS. Para acabar y no menos importante son las tecnologías que nos aportan seguridad al sistema, como puedan serlo XD bit o TXT

Seguridad: Sniffing. Capítulo Primero -> Modelo OSI y TCP/IP

Share on Google+Share on FacebookTweet about this on Twitter

ATENCION: Los ejemplos que se van a mostrar y “tutoriales” tan solo tienen carácter educativo. En ningún aspecto comparto filosofías de invasión a la intimidad, ataques contra un sistema informático o cuestiones similares. En la medida que sea posible siempre se usarán ejemplos y formas que puedan ser usados por cualquier persona, de forma que pueda verificar los contenidos escritos. No obstante, por motivos más que obvios, materiales como contraseñas, nombres de usuarios o de hosts, serán omitidos o modificado en las capturas de pantallas realizadas (o las lineas escritas). Es decir, los ejemplos serán completamente reales, los datos mostrados a vosotros necesarios para poder pertrechar estos ejemplos no siempre lo serán (Sí lo serán los resultados). Para que esto conste de forma clara, todo material sensible modificado o falso estará resaltado en ROJO. Por motivos de seguridad, todo el material que sea expuesto aquí (exceptuando software propietario o libre, citaciones expresas o código de terceros) tanto texto, imágenes y código son propiedad del autor y está completamente prohibido su reproducción completa o parcial en otros lugares, espero que se comprenda.

 

Modelo OSI y TCP/IP

Antes de poder hablar de términos como IP, DNS, ARP, tramas, paquetes… es indispensable tener un conocimiento mínimo de como se constituye internet y de como funciona. Esa es la idea que nos trae hoy aquí. Estrictamente no es necesario conocer y comprender este tipo de términos a la perfección ni mucho menos, pero su conocimiento ayuda enormemente en cualquier tarea que tenga de forma directa o indirecta relación con una Red, como pueda serlo Internet. No obstante a la hora de tratar con prácticas como el Spoofing y el Sniffing (esta última especialmente) estos conocimientos sí pasan a ser imprescindibles.

Por ello vamos a centrar esta primera parte a comprender más o menos como se estructura Internet a un nivel, más que nada, teórico:

  • Modelo OSI y concepto de encapsulación
  • Capas/Niveles del modelo OSI
  • Modelo TCP/IP e Internet

 

 

Modelo OSI y concepto de encapsulación

En los setenta comenzaron a forjarse lo que serían las primeras redes entre diferentes sistemas. Pero como todo en esta vida, cada fabricante tenía su idea y para cada uno de ellos su idea era la mejor en comparación con el resto. La tecnología tiene que lidiar siempre con un problema siempre recurrente: La compatibilidad. Si una red se establece para poder interconectar entre sí una serie de diferentes dispositivos y/o sistemas, el problema era evidente… ninguna red era capaz de “hablar” con la red vecina, y solo mediante costosos equipos, recursos y otros hacían posible la operatividad entre ellos. Es así que fue necesario un acuerdo para establecer un modelo único por el cual regirse todos los fabricantes, de este modo sería mucho más simple crear interoperatividad entre sistemas diferentes. Así nació el modelo OSI.

La definición formal puede resultar un tanto confusa. OSI son las siglas Modelo de Interconexión de sistemas abiertos (Open System Interconnection), o incluso una definición más exacta podría darse como un modelo M.A.R.I.S.A. -> Modelo de Arquitectura de Referencia para la Interconexión de Sistemas Abiertos. Dicho de otro modo, de una forma más simple, podemos decir que el modelo OSI no es más que un modelo de referencia en el que se asientan ciertas ideas y sistemas para crear la conexión de múltiples sistemas entre ellos. Con este modelo de base, se comenzaron a crear protocolos y más protocolos… todo ello es lo que hace posible en última instancia lo que es Internet a día de hoy.

El modelo OSI se crea desde el inicio con la idea de una jerarquización y especialización clara de cada elemento que lo constituye. Es decir… cada elemento que va a jugar en OSI se intenta que sea aislado al resto, con una función bien definida. De este modo nacen los 7 niveles o capas (layers) en las que está constituida OSI. Cada capa layer en OSI está fuertemente especializada, tan solo se encargan de  recibir un dado de un layer adyacente, tratar el dato y enviar el dato al otro layer adyacente (si el layer es el último evidentemente no lo envía a ningun otro layer, al igual que si es el primero no lo recibe de otro).

Es importante recalcar el uso y función de cada una de estas capas, puesto que el conjunto de todos los protocolos que manejamos actúan de forma mayoritaria sobre una sola capa concreta del modelo OSI (algunos protocolos actúan en más de una capa, como pueda serlo por ejemplo Ethernet):


Esta imagen muestra perfectamente el modelo OSI y sus 7 capas o niveles. Pero antes de explicar la función de cada una hay que comprender como funciona.

Hemos dicho que la idea es que cada nivel sea especializado y en la medida de lo posible completamente independiente de los niveles superiores o inferiores. Esto se logra con el concepto de “Encapsulamiento”. Cada nivel no comprenderá ni tocará los datos que procedan de un nivel superior o inferior, lo tratará todo ello como una simple caja negra en la que no importa el contenido. Es por ello que cada unidad de información en cada nivel del modelo OSI posee un nombre distintivo. Existe no obstante un nombre genérico para todos ellos, PDU (Protocol Data Unit , o Unidad de datos del protocolo). Este término suele acompañarse con la letra al nivel que corresponde o el numero del nivel. Por ejemplo, la unidad de datos del novel 5 sería un 5PDU o SPDU. A partir del nivel 4 no obstante, cada nivel tiene un nombre también conocido diferente a PDU, aunque es igual de correcto usarlo. No obstante en informática está muy mal visto mezclar estos términos. Así, si nos encontramos en el nivel físico tan solo podemos hablar de bits. Frames si nos encontramos a nivel 2, paquete si estamos en nivel 3 o mensaje si estamos en nivel 4.

Para explicar el encapsulamiento, es necesario conocer esas PDU, puesto que explica perfectamente como funciona el modelo OSI y como un nivel envía información a otro:

Componentes PDU

El proceso de ascensión por los niveles es sencillo, el descenso de un dato sería exactamente igual pero en sentido contrario. Imaginemos que el nivel n+1 va a recibir un dato desde el nivel n. El nivel n realiza la función que tenga que realizar y cuando termina llama al nivel superior por medio del SAP (Punto de acceso al servicio) para enviar la información. Esa unidad de información se llama en dicho momento SDU del nivel n. Existen primitivas que realizan estas “llamadas” entre niveles, pero no compliquemos más el proceso. El caso es que ese nSDU justo antes de enviarse al nivel superior, es concatenado con un pequeño trocito de información adicional, llamado ICI (Interface Control Information, Información de Control de Interface) que es necesario para el paso de nivel. El nuevo bloque de información (ICI+SDU) pasa a llamarse IDU. En cuanto el IDU (Interface Data Unit, Unidad de datos de la Interface) cruza el nivel, el nICI es eliminado y el nSDU pasa a llamarse PDU del nivel n+1. Si fuese el nivel 3, se llamaría frame como ya hemos dicho. Un PDU es una unidad compuesta a su vez de una “cabecera” llamada PCI y el SDU. Este SDU por tanto contiene en realidad el PCI y el SDU del nivel n+2. La ÚNICA información por lo tanto que maneja el nivel n+1 será la PCI n+1. El SDU n+1 será enviado tal cual al nivel superior tal y como sucedió en el nivel n.

Dicho de otro modo, cada nivel tan solo se encarga de leer y eliminar, o añadir, la PCI de su nivel, dado que ICI es tan solo un trozo temporal de información que al final queda desechado. Es por ello que se llama al procedimiento encapsulamiento.

Visto de forma aun más resumida, imaginar que un navegador envía un dato a la red. El nivel de aplicación tomaría los datos enviados (7SDU) y le añadiría un PCI con información como el protocolo usado (HTTP), la longitud de los datos que se está enviando… El nivel de aplicación JAMÁS modificará por tanto el SDU entrante, ni siquiera mirará que datos son, simplemente recibirá el SDU y le añadirá en la PCI la información que tenga que añadirle. Despues de añadirle la PCI, la unidad pasará a llamarse 7PDU y será enviada por el SAP al nivel de presentación. Desde el punto de vista del nivel de presentación el proceso es exactamente igual al nivel de aplicación. El tan solo ve que recibe un SDU (que en este caso no sería más que la PCI+SDU del nivel de aplicación). Construye la 6PCI en el que especifica por ejemplo que los datos han sido cifrado por un algoritmo concreto o incluso encripta los datos (OJO!! si existe una encriptación o compresión de datos es evidente que el SDU es modificado) y la concatena con el 7SDU para formar el 6PDU, el cual es enviado al nivel inferior. El proceso continua hasta que al final en el nivel 1 todo es convertido en una mera secuencia de señales eléctricas enviadas por el cable de red. Cuando el otro extremo recibe la información, en realidad lo que está recibiendo sería algo como esto:

Encapsulamiento OSI

Aunque no se ha hablado anteriormente, un nivel puede no solo añadir una cabecera (PCI), sino que en algunas ocasiones y/o niveles encontramos que se añade al final del SDU una cola. Es el caso por ejemplo del nivel de enlace de datos. La capa física no obstante carece de PCI, ella es una mera intermediaria entre el medio y los datos lógicos.

Por último hay que añadir que aunque las dos imágenes anteriores son ciertas, existen mecanismos que no se han explicado, y que pueden ser usados en diferentes niveles si así se requiere por el protocolo. Es el caso de la segmentación/reensamblaje y la concatenación/separación:

Segmentación y Concatenación

En el caso de la segmentación, de un mismo SDU se forman diferentes PDU dentro del mismo nivel. Una vez que los diferentes PDU han sido creados se envía uno tras otro como si se tratase de PDUs diferentes de diferentes SDU. En el proceso inverso, el nivel n recibirá los diferentes PDU y los reemsamblará todos ellos en un solo SDU, que será el que se envíe al nivel superior.

La concatenación es diferente. En la concatenación se parte de diferentes SDU que producen diferentes PDUs. Esos PDUs se concatenan uno tras otro, y al finalizar es enviado todo el bloque, que corresponderá al SDU del siguiente nivel.

 

 

Capas/Niveles del modelo OSI

Capa 1, Capa Física

Esta capa es la encargada de enviar o recibir el flujo de bits final por el cable (o por el aire en el caso de conexiones wireless).  Es decir, en este nivel no importa en absoluto el contenido de esos bits de información, no importa si son correctos o son erróneos, si existe manipulación de bits o no existe manipulación de bits. Aquí no importa el destino de los datos o el origen de ellos, simplemente se codifica el flujo de bits de la forma necesaria para poder ser enviados por el medio que se esté usando (O al contrario, decodificar las señales recibidas del medio y convertirlas en bits de datos). Si es una red Ethernet por el cable Categoría 5e+, si es un Modem ADSL por el cable de teléfono de dos hilos de toda la vida, si es por WIFI por el aire. Dicho de otro modo, se transforman los bits en señales eléctricas (o viceversa) que serán las que transporten la información por el medio subyacente.

El nivel físico es posiblemente el más sencillo de comprender en función, aunque no por ello no deja de tener una complejidad importante. Aquí podríamos decir que las especificaciones eléctricas/electrónicas/magnéticas de los dispositivos de red son imprescindibles, normativas, temperaturas de operación, ruido del medio, especificaciones y/o estándares… y tampoco significa que no existan protocolos a este nivel, todo lo contrario, la mayoría de los lectores conocerá muchos de estos protocolos que operan exclusivamente a este nivel: Ethernet (IEEE 802.3), WIFI (802.11 b/g/n/a), xDSL, ISDN, GSM… en definitiva los protocolos de punto inicial/final por así decirlo que hacen posible las comunicaciones. Por ejemplo, un Modem ADSL actua en la capa física, Modulando o DEModulando las señales que tendrá que enviar o recibir por el cable de teléfono, y tendrá que hacerlo según el protocolo ADSL.


Capa 2, Capa de Enlace de datos

Es una de las capas del nivel OSI que mayor trabajo soporta y con no pocas tareas a llevar a cabo. Dicho de un modo simplista se encarga de la transmisión de los datos al medio adyacente (o a la capa física o a la capa de red) de una forma fiable y eficiente. Tomará un paquete (nombre de la unidad de información del nivel de red) del nivel de red y lo convertirá en un frame o trama (unidad de dato del nivel de enlace de datos) que será convertido en un flujo de bits y señales eléctricas que serán enviadas gracias al nivel físico. Si el dato es ascendente, tomará el flujo de bits procedentes del nivel físico y lo transformará en una nueva trama que será enviada al nivel superior, al nivel de red.

Esta capa se divide a su vez en dos subcapas, llamadas LLC (Logical Link Control o Control de Enlace Lógico) y MAC (Media Access Control, o Control de Acceso al Medio). Según la subcapa las funciones son diversas. Por ejemplo, en la subcapa LLC se realizan tareas como de corrección/detección de errores (según protocolos, por ejemplo en Ethernet no se realiza detección de errores en este nivel, pero si en WIFI) o el control de flujo.

LLC:

-Detección/corrección de errores: Se encarga precisamente de eso, asegurarse que los datos que se van a trasmitir al medio están libre de errores, o que los datos recibidos desde el medio se encuentran libres de ello. Alguna de estas técnicas se ha hablado en el capítulo de encriptación y autentificación cuando se habló de checksums y CRC.

-Control de Flujo: Es necesario la implementación de sistemas que garanticen que las tramas sean enviadas en el orden correcto o al menos conocer que trama es la primera y cual es la segunda en caso de que sean recibidas en otro orden (lo cual es bastante normal). Por otro lado es necesario la creación de frames especiales que indiquen el éxito o fracaso de la recepción de un frame de datos, como pueden ser los frames o paquetes ACK, y gracias a estos ACK y otras técnicas es posible conocer no solo el orden de los frames, sino si es necesario reenviar alguno que se ha perdido o transmitido con errores o cuestiones similares.

-Multiplexación de protocolos: Digamos que es posible multiplexar (“unir”) en una misma trama diferentes protocolos, es decir que en una misma trama exista dos o mas tipos de informaciones diferentes, de modo que cuando se realiza el proceso inverso se obtienen dos tramas diferentes con funciones completamente diferentes. Pensar en ISP que emiten simultaneamente a sus suscriptores televisión y conexión a Internet, de forma simultanea. Esto es posible exactamente por este procedimiento, las tramas de televisión se multiplexan con las tramas destinadas al tráfico de internet, y el Modem/router del cliente identificará que información tiene que destinar para la televisión de pago y cual de la información pertenece a Internet (no televisión).

MAC:

-Control de Acceso al medio: Como su propio nombre indica. El nivel de enlace de datos necesita conocer como tiene que acceder al medio para poder enviar los datos. La capa física tan solo coloca los datos en el canal y no se preocupa absolutamente de nada, es el nivel de enlace de datos quien tiene que supervisar cuestiones como que el medio se encuentre disponible en dicho momento. ¿Por qué es esto necesario? Imaginar que sucedería si se pretende enviar un frame via WIFI al router si en dicho momento exactamente el router está recibiendo un frame de otro equipo. En tal caso se produciría una colisión. Por ello es necesario sistemas de control que supervisen esto. Los dos modelos más comunes que podemos encontrar es por ejemplo el estandar CSMA/CD que es el empleado en redes Ethernet o el estandar CSMA/CA usado en WIFI, las redes Token Ring y Token BUS están perdiendo fuelle en estos últimos años. Hay que tener en cuenta que la eficacia de estos sistemas no depende si uno es más sofisticado que otro o cual es mejor, sino cual es más idóneo para cada medio. Por ejemplo, en caso de Ethernet y CSMA/CD el procedimiento de control es muy simple

a) CSMA/CD: Se comprueba que nadie esté transmitiendo en dicho momento. Si el medio no está libre se vuelve a intentar. En cuanto el medio esté libre se envía el primer bit y el protocolo permite conocer si ha existido o no colisión. Si ha existido se intenta enviar de nuevo el bit. Si no ha existido colisión se procede a enviar el segundo bit. Así hasta completar el envío de toda la trama

b) CSMA/CA: Se envía al medio una trama especial (RTS) preguntando si el medio está libre. Cuando el medio lo esté, recibirá una trama especial CTS, momento en el que se enviará la trama. Una vez enviada la trama y recibido un ACK de trama recibida, se procederá a la espera de un tiempo aleatorio. Tras el cual se procederá al envío de la segunda trama y así sucesivamente.

-Sincronización de Frames: Si el control de flujo es necesario para la fiabilidad de los datos, igualmente es necesario un mecanismo que sea capaz de separar o crear las tramas como tales. Es decir, de un flujo de bits que procede del nivel físico saber donde comienza y donde termina una trama y localizar donde comienza y termina la siguiente. Del mismo modo se tiene que encargar de “marcar” la trama que se va a enviar para que el destino pueda del mismo modo conocer cual es el inicio y fin de las tramas.

-Direccionamiento MAC: la gran mayoría conoce lo que es una dirección IP, pero si acudimos al modelo OSI, IP es un protocolo de nivel de red. En realidad existe un direccionamiento a más bajo nivel basado en en un direccionamiento físico. Se denomina físico porque la trama como tal no se envía en realidad a una IP, sino a una interfaz física. Cada interfaz física por tanto posee una dirección física única en el mundo, y así sucede. Es lo que llamamos comúnmente como dirección MAC, que no es más que un identificador grabado en fábrica que se le asigna a cada dispositivo de red. Recordemos que cada nivel no comprende, ni tiene que hacerlo, que sucede por encima o por debajo de su nivel. De este modo el nivel de enlace de datos especificará (o leerá) en la trama el origen y destino de la trama a nivel físico. De este modo, el nodo de red que reciba la trama sabrá a quien tiene que destinarla, o si tiene simplemente que desecharla porque dicha trama no tiene nada que ver con él.

Este ID que denominamos como dirección MAC es un ID que administra la organización IEEE y que es necesario comprar si se desea crear con fines comerciales un dispositivo de red. Este ID está constituido por una cadena de 6 bytes hexadecimales, generalmente expresado como 00:11:22:33:44:55 o como AA-12-BB-34-CC-56. Cada adaptador físico posee su dirección MAC única, lo cual no quiere decir que esta pueda ser alterada por software de algún modo.

-QoS: En este nivel y subnivel se lleva a cabo una labor también importante, como es QoS (Quality Of Service o Calidad de Servicio). QoS son sistemas de priorización de tráfico. Dado que el ancho de banda queramos o no es limitado (no es infinito) es necesario en algún momento priorizar un tráfico frente a otro. De lo contrario se producirían errores de transmisión intolerables en cuestiones que requieran aplicaciones sensibles al tiempo. Por ejemplo solo hay que pensar en un software de monitorización de un paciente, en la que las órdenes se realizaran y recibiesen por red. En una aplicación similar no podríamos permitirnos el lujo de la existencia de retrasos en las señales debido a una sobrecarga en nuestra red. No podríamos permitir que (dado que el ancho de banda no es infinito) por leer el correo en nuestra red, descargar archivos o cualquier otra labor, pudiese relentizar dicha monitorización. Es necesario por tanto priorizaciones de tráfico. Así por ejemplo podríamos disponer de tráfico pesado pero que poco importa su retraso o completamente el caso concreto, tráfico muy ligero pero con un retraso mínimo. O tráfico normal pero para el que se requiere una sincronización y estabilidad absoluta.

-Otros: Existen otras funciones quizás menos conocidas o usadas de forma popular, como VLAN o la commutación de paquetes.

como protocolos que podemos indicar en el nivel de enlace de red tenemos desde Ethernet, ARP (que se verá exhaustivamente), Frame Relay, PPTP/L2TP…

 

Capa 3, Capa de Red

Quizás la capa más conocida de forma popular dado la importancia manifiesta del protocolo IP. Este nivel tiene 2 funciones principales:

-Encaminamiento: A fin de ser posible la comunicación entre dos dispositivos en la ubicación que sea, es necesario un sistema que sea capaz de destinar un paquete desde un origen a un destino por una ruta que sea la óptima según el momento o situación. Esta ruta puede variar por razones de latencia o simplemente congestión.

-Control de congestión: Dado que es importante conocer aquellas rutas que no son eficaces, es necesario disponer de mecanismos que puedan identificar dichos nodos y poder así establecer rutas diferentes

Hay que tener en cuenta que IP no es más que un protocolo más de este nivel, existen otros muchos protocolos que no requieren de una IP para poder ser usados, como por ejemplo IPX o ICMP. No obstante las redes que tenemos constituidas a día de hoy, la infinita mayoría, corresponde al modelo TCP/IP, en el que el protocolo IP está presente prácticamente en todo momento. Pero IP será tratado en otro momento de forma más exhaustiva.

Como hemos dicho existen otros protocolos de nivel de Red como pueda serlo IP, ICMP, IGMP, IPX…

 

Capa 4, Capa de Transporte

Los niveles 1 2 y 3 están orientados a mantener una comunicación directa tan solo entre sí mismos y el nodo de red adyacente. A partir del nivel 4 la comunicación pasa a ser entre host y host. Toda la información que se trata en los niveles 1 2 y 3 es tan solo de interés para los nodos de red, e incluso estos mismos son los que la modifican según necesiten para poder ir encaminando, detectando y enviado el mensaje al destino final. la comunicación que mantienen los 3 primeros niveles por tanto se limita entre nodos adyacentes.

En el nivel 4 esto cambia. La unidad de información pasa a llamarse mensaje, y aquí ya no importa el destino o el origen del mensaje dado que de eso se encargarán otros niveles. El nivel 4 se preocupa tan solo en garantizar el correcto transporte y entrega de los datos al host destino, no al nodo de red siguiente, que eso es función del nivel de enlace de datos. Hay que tener en cuenta que a lo mejor el mensaje tiene que cruzar medio mundo, 20 routers para poder llegar al destino final. Eso es lo que no le importa a la capa de transporte, el no ve el destino como un punto del mapa del mundo, sino como un dispositivo que está a su lado y con el que quiere comenzar una comunicación. Es por ello que muchas de las funciones que realiza el nivel de red pueden ser encontradas en las funciones que realiza el nivel de enlace de datos. ¿Pero entonces no es algo redundante? ¿No sería suficiente con permitir un control similar en el nivel de enlace de datos? No. El nivel de enlace de datos tan solo garantiza un medio libre de errores y correcto entre nodos, no más allá. El nivel de transporte no garantiza un medio libre entre dos nodos, sino que su información es recibida de forma correcta en el destino. Sin este tipo de control en la capa de transporte, se podría enviar un mensaje por el mismo equipo de forma correcta, pero podría darse el caso que en el salto número 10 por el router 10 por el que transita el mensaje el mensaje se perdiese por una desconexión del mismo o por una congestión intensa. De cara al host origen, del nivel de enlace de datos, la trama fue correctamente recibida por el router 1, luego para él no existiría problema alguno. En cambio, el nivel de transporte se mantendría esperando para la recepción de los datos y jamás sabría que el mensaje se perdió en algún punto de la red.

Es por ello que las funciones que puede desempeñar la capa de transporte (Dependiendo siempre del protocolo usado) son muchas de ellas similares a las que encontramos en enlace de datos, aunque esta vez siempre entre hosts:

-Control de Flujo y Corrección/Detección de Errores: Tal y como fue explicado en el nivel 2

-Acceso múltiple: Comúnmente conocemos esto como “puertos”. Todos los niveles del modelo OSI tienen una primitiva (un elemento) llamado “Service Access Point” (SAP, punto de acceso al servicio) por el cual se accede al nivel superior/inferior. En el caso del nivel de transporte este SAP es lo que denominamos de forma coloquial “Puerto”. La funcionalidad de estos puertos no es otra que la de poder establecer conexiones múltiples de forma simultanea sin que unas infieran en otras. Es decir, se requieren diferentes accesos diferentes a este nivel. Se puede pensar que que este mecanismo podría ser necesario igualmente en otros niveles, pero no es así. Recordemos que por debajo del nivel de transporte está el nivel de red y a él le da exactamente igual el dato que esté recibiendo, el trata todos los mensajes que recibe del mismo modo, le da igual orden, prioridad, si tiene o no tiene errores… en cambio, para el nivel de red si es muy importante conocer que mensaje está destinado a cada puerto, dado que cada puerto será una comunicación que se está realizando de forma simultanea, tiene que conocer que mensaje es cada cual y a quien está destinado.

Podemos decir igualmente que existen dos tipos de protocolos en la capa de transporte, aquellos orientados a la conexión y aquellos no orientados a la conexión. Podemos decir que en el primer caso, la idea es que antes de transmitir los datos es necesario el establecimiento de una conexión antes de transmitir los datos y la finalización de esta al acabar. Por el contrario en aquellos no orientados a la conexión esto no es necesario, y cada mensaje es enviado sin necesidad de crear conexiones. Generalmente se usan protocolos de transporte orientados a conexión como TCP cuando los datos a transmitir requieren de cierta fiabilidad y control sobre ellos, mientras que lo común es usar protocolos no orientados a la conexión cuando lo que se requiere es simplemente el envío de datos sin importar siquiera si hay errores en la transmisión. Es el caso de UDP. Pensar por ejemplo en aplicaciones que es necesario controlar perfectamente la información, como por ejemplo a la hora de querer ver una página web, no queremos que la página se muestre mal. Por el contrario, podemos pensar en un juego online en el que se está transmitiendo de forma continuada y masiva las coordenadas de la posición de nuestro personaje al servidor. No sucedería realmente nada si algunos datos se pierden por el camino, dado que no son datos que podríamos entender como críticos. Otras muchas veces es preferible usar este tipo de protocolos y dejar que la aplicación en sí la que por otros mecanismos software verifique la fiabilidad de dichos datos.

De todos modos TCP/UDP será también extendido de forma amplia, y esto servirá más que nada como una “mera” introducción.

 

Capa 5, Capa de Sesión

La función de la capa de sesión no es otra que la de abrir, configurar, mantener y cerrar una sesión entre dos aplicaciones, generalmente en un esquema de aplicaciones cliente-servidor. En realidad ha sido un nivel poco usado, dado que la mayoría de las funciones de las que puede encargarse suelen ser aplicadas en la misma Capa 7, en nivel de aplicación. No obstante tenemos algunos protocolos tipo que nos muestran perfectamente de lo que hablamos, como el protocolo SSH (bastante usado) o SCP. Otro ejemplo común de ello es el protocolo de Microsoft NetBios para la resolución de nombres en redes Windows.

 

Capa 6, Capa de presentación

La función de la penúltima capa es preparar los datos para la capa final (en caso de una conexión entrante) y prepararlos para que sean enviados. Es por ello que esta capa se encarga fundamentalmente de tres funciones:

-Conversión de datos: Las redes pueden estar compuestas por diferentes sistemas que tratan los datos de manera diferente. Por ejemplo diferente codificaciones de caracteres. La capa de presentación es necesaria por tanto si se quiere que diferentes sistemas que usan codificaciones diferentes puedan hablar entre ellos.

-Compresión: Poco es necesario añadir. En el nivel de presentación puede ser necesario una compresión o descompresión de estos. Esto no quiere decir que cualquier compresión de datos en una red se sitúe en este nivel, aunque este nivel se debería de encargar de ello

-Cifrado: Los datos pueden necesitar un cifrado de datos o descifrado a este nivel. Aunque protocolos como SSL/TLS puedan ser usados a nivel de transporte, puedes ser usado igualmente en nivel de presentación, siendo posiblemente una solución más segura.

Protocolos que funcionen en este nivel? TLS o SSL para comenzar, aunque podemos citar también por su gran implementación “MIME”, protocolo usado ampliamente en la codificación de correos electrónicos.

 

Capa 7, capa de aplicación

Por último, el nivel de aplicación. Si el nivel físico hace de nexo entre los datos lógicos y meras señales eléctricas, el nivel de aplicación hace de nexo entre la aplicación y por tanto el usuario y la red. Es el nivel más cercano al usuario e interactua directamente con él. Posiblemente aquí encontremos la mayoría de los protocolos más conocidos, quizás excluyendo TCP o IP: HTTP, SMTP, POP, IMAP, DNS, FTP, DHCP… así un navegador web es el que interactua con el usuario para poder visionar una web, y el protocolo más cercano al usuario es por tanto HTTP y DNS. Si usamos un gestor de correo es SMTP, IMAP y POP los protocolos que hacemos uso para poder leer nuestro correo… estos protocolos interactuan directamente con nosotros, y serán las diferentes capas las que se irán transformando los datos hasta acabar convirtiéndolos en una mera sucesión de señales eléctricas que contienen toda la información necesaria para alcanzar el destino.

 

 

Modelo TCP/IP e Internet

A medida que ascendemos por los niveles del modelo OSI, comprobamos ciertos aspectos que pueden o podrían ser implementados en otros niveles, o agrupar varios de ellos por el poco uso que puede darse. Hay que tener en cuenta que el modelo OSI es tan solo un modelo de referencia, y por supuesto no se pensó en modo alguno en la existencia de Internet, y menos aun de lo que es Internet a día de hoy. Es por ello que del mismo modo que nació el modelo OSI, apareció el modelo TCP/IP, por supuesto basado íntegramente en el modelo OSI. Es más… el modelo TCP/IP que es el que es usado hoy en día es prácticamente el modelo OSI solo que simplificado y algunos pequeños cambios.

El modelo TCP/IP es el siguiente:

TCPIP Vs OSI

Como se aprecia, básicamente el modelo TCP/IP condensa los niveles de aplicación, presentación y sesión en tan solo un Nivel Aplicación. Por otro lado condensa los niveles Físicos y enlace de datos en un nivel de Enlace de datos (o acceso a la red). De este modo, el modelo TCP/IP pasa a tener tan solo 4 niveles diferentes, niveles que funcionan exactamente igual que en el modelo OSI, salvo los niveles de enlace de datos y aplicación que se encargarían también del peso restante.

Aunque el modelo TCP/IP se puede ver como una simplificación al modelo OSI, no podemos en ningún momento afirmar que el modelo TCP/IP sea siquiera compatible con OSI. Es cierto que las funciones de los diferentes niveles es el mismo con la diferencia de que algunos de ellos están condensados, pero existen muchas otras diferencias a menor escala que hace que cada día que pasa el modelo TCP/IP sea más diferente a OSI. Esto tiene también una explicación.

El modelo OSI es un modelo muy antiguo en lo que toca al ritmo galopante de nuestros días en cuestión de tecnología. Se crean o destruyen protocolos así hagan falta, e incluso muchos de ellos es complicado ubicarlos en un nivel concreto, tanto en OSI como en TCP/IP. Mientras que OSI es un modelo de referencia, TCP/IP es un modelo que podríamos llamar “en producción”, sujeto a modificaciones en el tiempo según las necesidades. Es cierto que la inmensa mayoría de estas necesidades se satisfacen con protocolos y/o técnicas diferentes, pero no tiene por qué limitarse a esto. Podemos ver OSI por tanto como un modelo rígido y TCP/IP como un modelo derivado de OSI que ha continuado por si mismo, aunque como hemos dicho, una vez más, es muy muy similar en forma y contenido a OSI.

Es evidente que el modelo TCP/IP tiene como características casi indiscutibles la necesidad del protocolo de red IP o el protocolo de transporte TCP. Pero dentro del modelo TCP/IP existe un conjunto bastante grande de protocolos, lo que se conoce como la pila (o stack) de protocolos TCP/IP. Muchos de ellos nos son más que conocidos: IP, ARP, DNS, TCP, UDP, ICMP, IGMP, IPsec,L2PT, PPTP… aunque es posible hacer funcionar una red TCP/IP con un conjunto limitado de esta pila de protocolos. Así, el modelo TCP/IP no solo es una arquitectura propia que explica como se pueden relacionar los diferentes protocolos entre sí, sino que especifica los diferentes protocolos que harán uso de dicho modelo.

Su importancia es evidente: Internet y redes LAN. Podríamos decir que Internet ha sido el gran logro, pero no hay nunca que olvidar las redes locales. Es cierto que Internet está constituida por el modelo TCP/IP, pero las redes LAN no tienen por qué estarlo. Por ejemplo aun se encuentran redes en IPX, lo que hace necesario elementos para la correcta interoperatividad entre diferentes modelos.

 

Para terminar este capítulo, hay que hablar de Internet. Modelo OSI, modelo TCP/IP, protocolos… toda esa teoría, conceptos y herramientas ha servido a día de hoy para poder constituir la red de datos más grande que se ha conocido (si excluimos el cerebro humano como red neuronal). Actualmente Internet se puede concebir como una red con vida propia. El éxito de Internet y su gran importancia desde el punto de vista de este escritor es que es la primera “construcción” humana de la cual TODOS formamos parte (al menos si así lo deseamos). Ese es el principal peligro que siempre acosará Internet y que esperemos que por siempre Internet pueda sortear la política o los intereses económicos.

¿Que es Internet? ¿Quien es el dueño? ¿Que es de los ISP?

Internet es una red abierta, libre, gratuita. Pero para poder mantenerla, expandirla y hacer un buen uso de ella, actualmente existen dos organizaciones sin animo de lucro que se encargan de ello. Podríamos verlos como “sus dueños”, aunque esta afirmación es completamente errónea.

La primera organización nacida relativamente ayer, en el 1998, es la encargada de la asignación de direcciones IP y de nombres de dominio, es la ICANN (Internet Corporation of Assigned Names and Numbers), de la cual pende una rama de ella conocida como IANA, la cual se encarga de parte de esta labor, aunque su papel era el de ser la misma ICANN antes de que esta fuese constituida como tal. Actualmente IANA se encarga principalmente de la coordinación del direccionamiento IP, los servidores DNS raíces o de cuestiones como los puertos TCP/UDP. Por el otro lado tendríamos a la IETF, que sería la organización que crea, elimina o modifica los protocolos del nucleo de TCP/IP, como pueda serlo el mismo protocolo IP, TCP, UDCP… si bien es cierto que muchos protocolos de Internet son mantenidos por otras entitades, la IETF tan solo se encarga de aquellos protocolos esenciales. Por ejemplo el cada día más próximo IPv6. Pese a la polémica siempre suscitada de si la ICANN debería de ser una organización americana o no, personalmente por ahora siempre han realizado una labor impecable.

Como vemos, Internet por tanto es la red que se forma con los mismos cientos de miles, millones de dispositivos conectados entre sí de una u otra forma, ya sean redes privadas o redes públicas. Así, cuando conectamos nuestro equipo a Internet, estamos formando parte en dicho momento de Internet. Quizás sea más fácil pensar en Internet como un cable interminable al cual el que quiera puede cuando quiera acercar el brazo y unirse, haciendo que al cable le crezca otro brazo más. Y aunque parezca lo contrario, es una red libre, nosotros no pagamos por el acceso sus infraestructuras… ¿o si? Para poder tener acceso a la red de redes necesitamos un ISP, un proveedor de servicios que nos alquila sus infraestructuras para poder conectarnos a ella. Podemos pensar que en u principio Internet no era más que un cable que conectaba dos universidades, una en Estados unidos y otra en ginebra. Podemos pensar que en algún momento se lanzó otro cable a otro pais en estados unidos, formando la primera pequeña rad de ordenadores interconectados y separados por cientos o miles de kilómetros. A esta imagen tan solo hay que añadirle ramas y más ramas y más ramas… universidades interconectadas entre ellas, infraestructuras y cableado que surcan los océanos… del mismo modo los ISP crean o mantienen sus propias redes, se conectan a los enlaces principales de internet, y así poco a poco se forma la mayor red de las redes:

Gracias al direccionamiento IP y a la eficiencia de los servidores de nombres de dominios, podemos acceder virtualmente a cualquier servidor público del planeta con tan solo conocer o su IP o su nombre de dominio de tenerlo. De ahí la importancia de la ICANN. No obstante, la ICANN delega en organizaciones regionales la gestión de las direcciones IP. Dicho de otro modo, mientras que la ICANN es la organización padre, las organizaciones regionales RIR (Regional Internet Registries) serían sus hijas. Existen 5 entidades registradoras de Internet, cada una de ellas se ocupa de una región diferente del planeta, de modo que ninguna se solapa. Es decir, cada una de estas RIR serían la máxima autoridad registradora IP, tan solo estando por encima de ellas la ICANN e IANA

  • RIPE NNC -> Se encarga de toda Europa y prácticamente toda Asia, excluyendo el Sur de esta.
  • AfriNIC -> Se encarga del continente Africano en su totalidad
  • APNIC -> Todo el Sur de Asia más toda Australia
  • ARIN -> América del Norte
  • LACNIC -> América Central y Sur América


Distribución de las Organizaciones RIR


Del mismo modo que se gestiona todo el direccionamiento IP, es gestionado todos lso nombres de dominio. Esto es necesario para el correcto funcionamiento de la Red, es fundamental. Esta función recae igualmente y en última instancia en la ICANN, aunque esta permite a empresas tanto públicas como privadas actuar como agentes registradores, por supuesto con todos los permisos pertinentes y todas las restricciones de cada caso. Así, la ICANN es la encargada de la gestión y control de los dominios de primer nivel, conocidos como Top-Level Domain o simplemente TLD

¿Pero que es un nombre de dominio? Un nombre de dominio no es más que un identificador asignado a un usuario (ya sea físico, empresa…) que generalmente se enlaza a una IP, de modo que su ubicación en Internet queda completamente definida por dicho identificador. El sistema de nombre de dominios es jerárquico, y debe de ser leído siempre de derecha a izquierda, donde cada punto separará los diferentes niveles del dominio.

Dicho esto, los dominios de primer nivel por tanto son aquellos identificadores que se encuentran a la derecha del todo, antes de encontrar el primer punto de separación. No obstante, los dominios de primer nivel no son infinitos como cabría esperar, existen dos grupos bien definidos de los dominios de primer nivel:

  • ccTLD (Country Code TLD): Podríamos traducirlo algo así como TLD regionales o traducirlo literalmente como TLDs por código de País (o algunas regiones), los cuales son los únicos dominios de primer nivel que poseen tan solo dos letras. La ICANN concede a cada País por tanto un dominio de primer nivel, correspondiente este a dos letras, que coinciden con un estandar ISO (exceptuando alguna que otra excepción por motivos históricos). Así por ejemplo, el dominio de primer nivel reservado para España es “.es” o para francia “.fr”. No obstante, cada País tiene el derecho de explotación de su dominio de primer nivel, dándose el caso de que algunos países lo vendieron a empresas por dinero.
  • gTLD (Generic TLD): TLDs genéricos. Todos ellos poseen tres o más caracteres, aunque la mayoría son de 3 y 4. Aquí de nuevo hay que hacer distinción entre 3 subgrupos:

    -Generales: Aquellos que dependen exclusivamente de la ICANN y regidos por sus respectivas normas de registro: .com .net .org .pro .bif .info .name
    -Patrocinados: dominios propuestos a la ICANN por agencias u organizaciones privadas por diferentes motivos, desde culturales, estatales… y algunos de ellos bien “pagados” a la ICANN: .aero .asia .cat .coop .edu .gov .int .jobs .mil .mobi .museum .tel .travel.
    -Infraestructura y Reservados: Son dominios de primer nivel que no se usan. Algunos se usan para pruebas, otros se mantienen por razones históricas: .example .invalid .localhost .test .arpa

Según lo explicado, para una persona física sería imposible registrar un dominio de primer nivel, dado que los administra tan solo la ICANN y hay los que hay. Cuando registramos dominios realmente lo que hacemos es en el mejor de los casos registrar dominios de segundo nivel, aunque muchas veces se confunde y se les llama de primer nivel. Así por ejemplo, el dominio Theliel.es no es un dominio de primer nivel, sino de segundo. El primer nivel es “.es”, el segundo nivel es “theliel.es”.

Los ccTLD son administrados de manera local por las agencias de cada Pais encargadas a ello, por ejemlo en españa la agencia encargada del registro y mantenimiento de los dominios .es es “nic.es” perteneciente al propio gobierno, lo que no quita que existan entidades intermediarias que son agentes registradores legales. Los gTLD no obstante, son gestionados por agencias o empresas privadas y por supuesto en última instancia por la ICANN. Pero esto no evita el problema de preguntarse como se enlazan esos nombres de dominio al sistema de direccionamiento IP. Y es ahí donde entra en juego el protocolo DNS y los servidores de nombres de dominios. Aunque DNS será explicado en el siguiente capítulo, si hay que comprender que es necesario ciertos servidores (llamados servidores raíces) que se encarguen del grueso de todo ello, de toda la mayoría de toda la gestión DNS. Es así por tanto que existen 13 servidores raíces esparcidos por todo el mundo, administrados tanto por compañías publicas como privadas, y por supuesto por seguridad, existe réplicas de la mayoría de ellos, para distribuir la carga y para sustitución en caso de fallo, avería o ataque Hacker. Todos ellos se denominan alfabeticamente comenzando por la primera letra: “letra.root-servers.net”, siendo la letra desde la A hasta la M:


Gracias a estos elementos explicados, Internet es posible. En el próximo capítulo veremos los protocolos más importantes que hacen que esto funcione y explicaremos un poco más como es posible que dos puntos cualesquiera del mundo puedan estar conectados en cualquier momento. Todo ello necesario para poder comprender más adelante algunas técnicas ya comentadas, como el Sniffing.

iPhone OS (iPod, iPhone, iPad): Firmware 4.0, RAM, iAds y JB

Share on Google+Share on FacebookTweet about this on Twitter

Dentro de poco (quizás un mes, quizás dos meses) se liberará la firmware 4.0 de iPhone OS.

Las buenas noticias:

  • Aun en estado beta ya se ha logrado hacer JB
  • Soporte para multitarea
  • Creación de carpetas en el board
  • Bandeja de entrada de correos unificada
  • Algunas mejoras en VPN
  • iPad widget?

Sobre las buenas noticias no hay mucho que decir en realidad. El soporte multitarea es algo que podríamos “criticar” duramente, y para variar deja ver el poco esfuerzo de Apple en incluir funciones básicas. Recordemos que hasta ahora o navegas, o lees el correo, o ves el tiempo… y si querías tener una aplicación como Skype o messenger no podías hacer nada más.

Por otro lado la creación de carpetas en el board no es más que añadir algo que ya existe: Category. Es decir, se toma la idea de una aplicación de Cydia y se implementa. No obstante es una buena idea, sobre todo para aquellos que tienen montones de iconos distribuidos por montones de páginas.


Las malas noticias:

  • El soporte multitarea matará la batería y el rendimiento, especialmente en los iPod 1G/2G y los iPhone 2G/3G
  • La inclusión de la plataforma iAds
  • No flash
  • No Stack BT

Es evidente que todo no es positivo. Si la multitarea es a día de hoy algo imprescindible, esto causa en Apple dos problemas fundamentales. Inicialmente Apple se acogía al echo de que implementar multitarea implicaría un drenaje muy superior de la batería, y ellos no podian permitir que sus dispositivos con baterías SOLDADAS tuviesen una duración bastante inferior. No olvidemos que esto ha sido de siempre una cuestión de marketing para Apple, el asegurar que sus productos siempre contenían las mejores baterías y sus sistemas eran los que menos batería usaban. Esto en realidad es cierto, pero omitía la segunda parte: La competencia prefería implementar funciones como multitarea, un mayor rendimiento WIFI y covertura… que tener una batería que durase algo más. Pues bien… despues de todo esto a Apple parece que ahora no le importa la batería y quiere prestaciones. No me parece mal, para nada, personalmente prefiero multitarea a que me dure la batería algo más, solo digo como son los echos. Steve dijo textualmente referente a la multitarea: “No hemos sido los primeros, pero seremos los mejores”. Lo primero es cierto, lo segundo lo dudo… ahora viene el segundo problema.


El inconveniente de la multitarea no es solo la batería, es la RAM.
Cuando un programa se ejecuta es necesario cargar ciertas cosas en RAM y en el peor de los casos en memoria virtual. Cuando la aplicación se cierra dicha memoria se libera para que otras aplicaciones puedan hacer uso de ella. Esto en realidad no tiene mayor complejidad. Lo que hay que comprender es que un procesador tan solo puede leer/escribir de memoria, es decir, que lo que se vaya a manejar si o si debe de estar en ella, en RAM. Si tienes poca RAM, implica que el sistema tiene que estár constantemente cargando en RAM y descargando en RAM datos, y dado que estos datos estan en memoria secundaria (disco duro, memoria flash…) implica estár realizando constantemente lecturas en disco, lo que es el procedimiento más lento con muchisima diferencia en un dispositivo de hoy en día (hablamos de velocidades de miles de veces inferior).

El problema al que se enfrenta el iPod/iPhone/iPad es su limitada RAM. Tanto los iPod 1G y 2G como los iPhone 2G y 3G poseen una RAM de 128MB, mientras que el iPhone 3GS, el iPod 3G y el iPad poseen una RAM de 256MB. Pues bien, nada más arrancar un iPhone 3G, la memoria RAM libre disponible no es mayor a unos 40-45MB, en el caso de un iPad (sin poder hacerlo de forma experimental) tendrá unos 140MB libres o así. La regunta del millón es: ¿Esto es mucho o poco? La respuesta es contundente: Es muy muy poco en el primer caso y poco en el segundo.

Por ejemplo, veamos algunos consumos REALES de RAM típicos para el iPod/iPhone/iPad, el primer valor es el consumo en RAM, el segundo en memoria virtual:

  • Safari: alguna web de peso medio como ElPais -> 41MB / 97MB. ElPais+Marca (2 pestañas) = 53MB RAM / 107MB
  • Correo: Abrir la bandeja de 1 correo configurado solo para 15 correos: 20MB /75MB
  • Música/Video: Reproducir una canción o video cualquiera: 23MB /78MB
  • Notas: Ver algunas notas 20MB /91MB
  • Mapas: Ver mapas: 30MB /136MB, StreetView 40 MB /149MB
  • Aplicación con poca carga del AppStore (JaadoRDP): 28 MB / 45MB
  • Aplicación con carga media del AppStore (Apple Texas Holdem) 39MB / 96MB

Bien, el problema de la limitación de la RAM es claro. En caso de contar con iPod/iPhone “antiguos”, teniendo en cuenta que nada más reiniciados disponen tan solo de unos 40MB libres aproximadamente, significa que prácticamente con cualquier aplicación que se abra es suficiente para agotar la RAM existente, forzando al sistema a usar memoria virtual, con el decremento en rendimiento consiguiente.

En el caso del iPad o los modelos más nuevos, esos 128MB tampoco son todo lo que se cabría esperar. Un par de pestañas abiertas en safari es suficiente para copar más de 50MB de RAM. Imaginar que queremos usar la multitarea para cambiar entre safari con alguna aplicación de peso medio. Nos estaría consumiendo sin darnos cuenta unos 80MB. Ahora pensar que tenemos alguna aplicación de fondo tipo Messenger o Skype, que pueden tener un consumo de unos 30-40MB fácilmente, a la par que navegamos por 2-3 pestañas. El consumo se podría disparar a unos 100MB. Esto puede parecer “poco” para el iPad o para el iPhone 3GS, pero no lo es. Estás haciendo un consumo casi completo de la RAM. En cualquier momento que cambies a otra tarea o quieras escuchar música de fondo, o quieras habrir algún PDF en el correo o trabajar con 4 pestañas en safari o tener alguna aplicación de peso… de nuevo la necesidad de hacer uso de memoria virtual.

Que de malo tiene esto? La memoria virtual es espacio en disco (de memoria flash en este caso) que es usada a modo de memoria RAM, pero claro… el acceso y escritura en flash es infinitamente más lento que el acceso RAM y además, recordemos que la tecnología flash tiene una vida estimada en ciclos de lectura/escritura. Dicho de otro modo, cuanto más uso se haga de la memoria virtual, menos vida tendrá nuestro dispositivo y más lento será.

Nadie se ha preguntado sino, pq safari recarga las páginas cuando minimizamos este? o incluso cuando trabajando en pestaña y volvemos a la anterior esta se refresca? RAM. Nadie se ha dado cuenta nuca de lo lenta que es a veces la navegación por safari aun cuando la covertura WIFI es total?? RAM y los efectos de la memoria virtual. Cargas cada dos por tres en aplicaciones? RAM… etc etc etc. La RAM es un recurso vital. Tan absurdo es desperdiciarla como no usarla. En un PC es igual. Tener 6GB de RAM es una tontería si no se usan, y una tontería es también tener 2GB y requerir el sistema 4GB, puesto que solo lleva a una caída libre en el rendimiento del equipo. Que es lo ideal? No hacer uso de memoria virtual para almacenar datos (la memoria virtual tb se usa para otros fines, como acceso simultaneo a algunos datos y otras cosaS), tener suficiente RAM para prescindir de memoria virtual y que el sistema haga siempre el máximo uso de esta de forma inteligente.


Por último hablemos de la última novedad de Apple que implementará en la firmware 4.0 y que posiblemente sea la pesadilla para muchos. Y es que Apple, en su afan de ganar más dinero ha incluido una plataforma de publicidad en el SDK. Es decir, Apple permitirá incluir publicidad en las aplicaciones para ganar el 60% del beneficio de esta. Idea por cierto no nueva, y es la que se hace en Cydia desde hace ya mucho mucho.

Es decir, dentro de poco es posible que no solo nos bombardeen con banners y publicidad cuando navegamos, sino que tengamos que tragarnos X segundos de publicidad en todas las aplicaciones que ejecutemos. Bravo por Apple para ganar dinero, vale para los programadores y la maldicion para el cliente, que si ya teníamos que vivir con suficiente publicidad ahora nos la quieren meter también en las aplicaciones.

Desde un punto de vista de comodidad es un coñazo, pero va más allá. Esta publicidad necesitará seguro de una comunicación por red en la mayoría de los casos, o al menos intentará tener acceso a ella. Esto implica que para aquellos que tengan planes de precio en el iPhone repercutirá directamente en el uso de sus planes de precios!! es decir, no solo tendremos publicidad molesta, sino que ademas tendremos que pagar a nuestra compañía por hacer un mayor uso de nuestro ancho de banda.

Gracias a dios, al igual que para los navegadores como Firefox disponemos de extensiones como AdBlockPlus para bloquear estas molestas publicidades, en el caso de el OS 4.0 del iPhone podremos contar con parches que podremos crear para sorterarla, así como (en mi caso al menos) expandir mucho más mi archivo host para eliminar la publicidad de Cydia. Pasará por lo cual a aumentar su tamaño considerablemente para poder bloquear cualquier publicidad que pueda provenir de las aplicaciones del AppStore. En la medida que sea necesario, lo iré actualizando y publicando.


Ni que decir tiene que no hay soporte flash ni un stack para el BT decente que permita enviar o recibir archivos

iPad: Comienzan las malas noticias

Share on Google+Share on FacebookTweet about this on Twitter

Pese a la, primera vista, avalancha de compradores de este peculiar iPod Touch grandote, ya se comienzan a ver las deficiencias:


1º. Las primeras llegaron casi el día después de la entrega de las unidades, y es que parece ser que a los iPad no les gusta los AP para hacer uso de la conexión WIFI. Por lo visto son muchísimos los que se han quejado de que el aparato no reconecta al AP tras desconectarse de él o al encender el adaptador del iPad, siendo necesario olvidar la red y configurarla de nuevo. Por supuesto Apple no ha tardado en pronunciarse al respecto:

“Under certain conditions, iPad may not automatically rejoin a known Wi-Fi network after restart or waking from sleep. This can occur with some third-party Wi-Fi routers that are dual-band capable when: Using the same network name for each network, [or] Using different security settings for each network”

Es decir, como es de esperar Apple automáticamente culpa a los routers que no son de ellos (third-party Wi-Fi routers). No pueden simplemente decir que es un bug de su software y publicar un parche, eso sería demasiado desonrroso. En contrapartida la culpa es de otros fabricantes, como por ejemplo CISCO, el mayor y más prestigioso fabricante del routers del mundo. Si el problema lo tienen todos menos tú, es posible que sea tu dispositivo el que no funciona como tendría que funcionar, y no el 98% de todos los routers de la competencia, sin olvidar por supuesto que ningun dispositivo wifi tiene problemas de conexión con dichos routers. Vergonzoso… de nuevo la culpa es del vecino, no de ellos.


2º. En segundo lugar, aunque no deja de ser una verificación de lo que se suponía, según un estudio de la mano de “Piper Jaffray” más del 74% de los compradores (este porcentaje varía según la fuente) serían consumidores compulsivos de Apple que ya disponen de varios dispositivos de la manzana, desde MACs, iPhone e iPods. Más aun se extrae del mismo análisis que cerca del 70% serían usuarios de iPhone y que más del 96% ya dispondrían de algún iPod.  En cambio, el 78% asegura que no tenían pensado comprarse otro tipo de gadget. De todo esto se infieren varias conclusiones:

-Que efectivamente casi todos los compradores actuales han sido Fanboys de Apple
-el 78% no ha pensado en comprarse otro gadget, es decir, simplemente se lo metieron por los ojos sin siquiera necesitarlo.

Como he dicho, esto no era algo que fuese desconocido. Lo que sucede es que cuando te topas con un fanboy de Apple te llueven las críticas sobre si eres poco objetivo o demasiado crítico. Cuando aparecen cifras la cosa cambia. Que por cierto, aunque me crea estos números, lo he dicho siempre, las estadísticas tienen el valor que tienen, y es muy facil manipular los datos (que no es lo mismo qeu mentir) para parecer decir una cosa en vez de otra. Aun así, parece que la cosa está clara:



3º. En tercer lugar y más sorprendente es el echo de (según cuentan) un alto porcentaje de devoluciones de iPad. Entre las razones más comunes se encontrarían la imposibilidad de multitarea con el iPad, el elevado precio, lo innecesario que resulta un dispositivo así… en definitivas lo poco que otorga por lo que realmente cuesta. Segun algunos comentarios:

“Today, having returned iPad, he gave some reasons. Apple marketing describes iPad as a “magically and revolutionary product.” But that wasn’t O`Neill’s experience: “It isn’t magical and it isn’t revolutionary.””

Sin precedente alguno, la blogosfera se ha llenado de usuarios que lo compraron y lo han devuelto!! Podemos leer algunos de estos artículos aquí, pero como digo son muchos más.

http://www.boingboing.net/2010/04/02/why-i-wont-buy-an-ipad-and-think-you-shouldnt-either.html
http://www.socialtimes.com/2010/04/the-real-reason-i-returned-my-ipad

Básicamente todos apuntan a lo mismo: Precio incoherente, sin flash, la necesidad de iTunes y AppStore para todo, no multitarea, un hardware más bien limitado, no aporta absolutamente nada…

A lo cual yo no tengo sino que preguntarme lo siguiente:

Si todo esto que ahora argumentan ya se sabía… como lo compraste pese a ello? Teniendo en cuenta que al devolverlo, si no recuerdo mal, Apple te carga un 10% del producto, que pierdes de todas las maneras. Pues por lo que parece, es una tendencia que parece estar en aumento, y un porcentaje bastante y extramañamente elevado o lo han devuelto o lo están seriamente pensando.

Es lo que sucede cuando se compra algo sin saber.

Volver a arriba

Sobre Mí

Cambiar a la versión para móviles

Creative Commons License
Alma Oscura por Theliel is licensed under a Creative Commons Reconocimiento-No comercial-Sin obras derivadas 3.0 Unported License.
Basado en el trabajo de blog.theliel.es.
Para otros permisos que puedan exceder el ámbito de esta licencia, contactar en blog.theliel.es/about/contactar.