Here's some code to prove that there are no multilevel ROLLBACKs on SQL Server and it illustrates how transactions are handled:
BEGIN TRAN;
SELECT @@TRANCOUNT AS after_1_begin;
BEGIN TRAN;
SELECT @@TRANCOUNT AS after_2_begin;
COMMIT TRAN;
SELECT @@TRANCOUNT AS after_1_commit;
BEGIN TRANSACTION;
SELECT @@TRANCOUNT AS after_3_begin;
ROLLBACK TRAN;
SELECT @@TRANCOUNT AS after_rollback;